1500
How can I add a Zero-Lenght bar
G2antt1->BeginUpdate();
G2antt1->MarkSearchColumn = false;
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	var_Columns->Add(L"Tasks");
	var_Columns->Add(L"Start")->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(1));
	var_Columns->Add(L"End")->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(2));
	var_Columns->Add(L"Duration")->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(258));
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2010,9,20).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,256);
	var_Chart->AllowLinkBars = false;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AllowCellValueToItemBar = true;
	long h1 = var_Items->AddItem(TVariant("M1"));
	var_Items->AddBar(h1,TVariant("Milestone"),TVariant(TDateTime(2010,9,29).operator double()),TVariant(TDateTime(2010,9,29).operator double()),TNoParam(),TNoParam());
	var_Items->set_ItemBar(h1,TVariant(""),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarKeepWorkingCount,TVariant(true));
G2antt1->EndUpdate();

1499
Can I use bars like Milestone (Zero-Length bar) in SchedulePDM

// BarResizing event - Occurs when a bar is moving or resizing.
void __fastcall TForm1::G2antt1BarResizing(TObject *Sender,Exg2anttlib_tlb::HITEM   Item,Variant   Key)
{
	OutputDebugString( PChar(G2antt1->Items->SchedulePDM(Item,TVariant(Key))) );
}

G2antt1->BeginUpdate();
G2antt1->MarkSearchColumn = false;
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	var_Columns->Add(L"Tasks");
	var_Columns->Add(L"Start")->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(1));
	var_Columns->Add(L"End")->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(543));
	var_Columns->Add(L"Duration")->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(258));
Exg2anttlib_tlb::IConditionalFormatPtr var_ConditionalFormat = G2antt1->ConditionalFormats->Add(L"%3",TNoParam());
	var_ConditionalFormat->Bold = true;
	var_ConditionalFormat->ApplyTo = Exg2anttlib_tlb::FormatApplyToEnum::exFormatToItems;
Exg2anttlib_tlb::IConditionalFormatPtr var_ConditionalFormat1 = G2antt1->ConditionalFormats->Add(L"%3 = 0",TNoParam());
	var_ConditionalFormat1->ForeColor = RGB(196,196,196);
	var_ConditionalFormat1->ApplyTo = Exg2anttlib_tlb::FormatApplyToEnum(0x3);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2010,9,20).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,256);
	var_Chart->Bars->Add(L"Task:Split")->Shortcut = L"Task";
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AllowCellValueToItemBar = true;
	long h1 = var_Items->AddItem(TVariant("M1"));
	var_Items->AddBar(h1,TVariant("Milestone"),TVariant(TDateTime(2010,9,27).operator double()),TVariant(TDateTime(2010,9,27).operator double()),TNoParam(),TNoParam());
	var_Items->set_ItemBar(h1,TVariant(""),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarKeepWorkingCount,TVariant(true));
	long h2 = var_Items->AddItem(TVariant("T1"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2010,9,27).operator double()),TVariant(TDateTime(2010,9,27).operator double()),TNoParam(),TNoParam());
	var_Items->set_ItemBar(h2,TVariant(""),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarEndInclusive,TVariant(TDateTime(2010,9,27).operator double()));
	var_Items->set_ItemBar(h2,TVariant(""),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarKeepWorkingCount,TVariant(true));
	var_Items->AddLink(TVariant("L1"),h1,TVariant(""),h2,TVariant(""));
	long h3 = var_Items->AddItem(TVariant("T2"));
	var_Items->AddBar(h3,TVariant("Task"),TVariant(TDateTime(2010,9,27).operator double()),TVariant(TDateTime(2010,9,27).operator double()),TNoParam(),TNoParam());
	var_Items->set_ItemBar(h3,TVariant(""),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarEndInclusive,TVariant(TDateTime(2010,9,27).operator double()));
	var_Items->set_ItemBar(h3,TVariant(""),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarKeepWorkingCount,TVariant(true));
	var_Items->AddLink(TVariant("L2"),h1,TVariant(""),h3,TVariant(""));
	var_Items->set_Link(TVariant("L2"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkPDMWorkingDelay,TVariant(5));
	long h4 = var_Items->AddItem(TVariant("M3"));
	var_Items->AddBar(h4,TVariant("Milestone"),TVariant(TDateTime(2010,9,27).operator double()),TVariant(TDateTime(2010,9,27).operator double()),TNoParam(),TNoParam());
	var_Items->set_ItemBar(h4,TVariant(""),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarKeepWorkingCount,TVariant(false));
	var_Items->AddLink(TVariant("L3"),h1,TVariant(""),h4,TVariant(""));
	var_Items->set_Link(TVariant("L3"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkPDMWorkingDelay,TVariant(5));
	var_Items->SchedulePDM(0,TVariant(""));
G2antt1->EndUpdate();

1498
How can I prevent vertical scrolling when user clicks the overview part of the control

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void __fastcall TForm1::G2antt1AddItem(TObject *Sender,Exg2anttlib_tlb::HITEM   Item)
{
	Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
		var_Items->AddBar(Item,TVariant("Task"),TVariant(var_Items->get_CellValue(TVariant(Item),TVariant(2))),TVariant(var_Items->get_CellValue(TVariant(Item),TVariant(4))),TNoParam(),TNoParam());
}

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(1994,8,3).operator double()));
	var_Chart->set_PaneWidth(false,256);
	var_Chart->LevelCount = 2;
	var_Chart->UnitScale = Exg2anttlib_tlb::UnitEnum::exDay;
	var_Chart->FirstWeekDay = Exg2anttlib_tlb::WeekDayEnum::exMonday;
	var_Chart->OverviewVisible = Exg2anttlib_tlb::OverviewVisibleEnum::exOverviewShowAllVisible;
G2antt1->ColumnAutoResize = false;
G2antt1->ContinueColumnScroll = false;
/*
	Select the Component\Import Component...\Import a Type Library,
	to import the following Type Library:

		Microsoft ActiveX Data Objects 6.1 Library

	TypeLib: msado15.dll

	to define the namespace: Adodb_tlb
*/
//#include "ADODB_TLB.h"
Adodb_tlb::_RecordsetPtr rs = Variant::CreateObject(L"ADOR.Recordset");
	rs->Open(TVariant("Orders"),TVariant("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExG2antt\\Sample\\Access\\misc.accdb"),Adodb_tlb::CursorTypeEnum::adOpenStatic,Adodb_tlb::LockTypeEnum::adLockOptimistic,0);
G2antt1->DataSource = (IDispatch*)rs;
G2antt1->Items->AllowCellValueToItemBar = true;
G2antt1->Columns->get_Item(TVariant(2))->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(1));
G2antt1->Columns->get_Item(TVariant(4))->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(2));
G2antt1->EndUpdate();

1497
I need to specify the start and end dates of the bar to be the same, but no bars are shown. (recommended for bars with exBarKeepWorkingCount ) What I can do

G2antt1->BeginUpdate();
G2antt1->MarkSearchColumn = false;
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	var_Columns->Add(L"Tasks");
	var_Columns->Add(L"Start")->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(1));
	var_Columns->Add(L"End")->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(543));
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2006,9,20).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,256);
	var_Chart->ShowEmptyBars = 0;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AllowCellValueToItemBar = true;
	long h = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2006,9,21).operator double()),TVariant(TDateTime(2006,9,21).operator double()),TNoParam(),TNoParam());
	var_Items->set_ItemBar(h,TVariant(""),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarEndInclusive,TVariant(var_Items->get_ItemBar(h,TVariant(""),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarStart)));
	var_Items->set_ItemBar(h,TVariant(""),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarKeepWorkingCount,TVariant(true));
	h = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2006,9,21).operator double()),TVariant(TDateTime(2006,9,21).operator double()),TNoParam(),TNoParam());
	var_Items->set_ItemBar(h,TVariant(""),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarEndInclusive,TVariant(TDateTime(2006,9,25).operator double()));
	var_Items->set_ItemBar(h,TVariant(""),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarKeepWorkingCount,TVariant(true));
G2antt1->EndUpdate();

1496
How can I display the end date to be the last visible date of task, instead the next day

// BarResize event - Occurs when a bar is moved or resized.
void __fastcall TForm1::G2antt1BarResize(TObject *Sender,Exg2anttlib_tlb::HITEM   Item,Variant   Key)
{
	G2antt1->Items->SchedulePDM(Item,TVariant(Key));
}

// BarResizing event - Occurs when a bar is moving or resizing.
void __fastcall TForm1::G2antt1BarResizing(TObject *Sender,Exg2anttlib_tlb::HITEM   Item,Variant   Key)
{
	G2antt1->Items->SchedulePDM(Item,TVariant(Key));
}

G2antt1->BeginUpdate();
G2antt1->MarkSearchColumn = false;
G2antt1->HeaderHeight = 36;
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	var_Columns->Add(L"Tasks");
	var_Columns->Add(L"Start")->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(1));
	Exg2anttlib_tlb::IColumnPtr var_Column = var_Columns->Add(L"End");
		var_Column->HTMLCaption = L"<b>End</b><br>Inclusive";
		var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(543));
		var_Column->Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::DateType;
	var_Columns->Add(L"End")->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(2));
Exg2anttlib_tlb::IConditionalFormatPtr var_ConditionalFormat = G2antt1->ConditionalFormats->Add(L"1",TNoParam());
	var_ConditionalFormat->Bold = true;
	var_ConditionalFormat->ApplyTo = Exg2anttlib_tlb::FormatApplyToEnum(0x2);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2006,9,20).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,256);
	var_Chart->Bars->Add(L"Task:Split")->Shortcut = L"Task";
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AllowCellValueToItemBar = true;
	long h1 = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2006,9,21).operator double()),TVariant(TDateTime(2006,9,23).operator double()),TNoParam(),TNoParam());
	long h2 = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2006,9,21).operator double()),TVariant(TDateTime(2006,9,26).operator double()),TNoParam(),TNoParam());
	var_Items->AddLink(TVariant("link"),h1,TVariant(""),h2,TVariant(""));
	var_Items->set_ItemBar(0,TVariant("<*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarKeepWorkingCount,TVariant(true));
	var_Items->SchedulePDM(0,TVariant(""));
G2antt1->EndUpdate();

1495
How do I hide the selection
G2antt1->BeginUpdate();
G2antt1->MarkSearchColumn = false;
G2antt1->SelForeColor = G2antt1->ForeColor;
G2antt1->SelBackColor = G2antt1->BackColor;
G2antt1->ShowFocusRect = false;
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	Exg2anttlib_tlb::IColumnPtr var_Column = var_Columns->Add(L"Format");
		var_Column->FormatColumn = TVariant(String("type(value) in (0,1) ? 'null' : ( dbl(value)<0 ? '<fgcolor=FF0000>'+ (value format '2|.|3|,|1' ) : (dbl(value)>0 ? '<fgcolor=00") +
"00FF>+'+(value format '2|.|3|,' ): '0.00') )");
		var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueFormat,TVariant(1));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddItem(TVariant(10));
	var_Items->AddItem(TVariant(-8));
G2antt1->EndUpdate();

1494
How do I access the cells, or how do I get the values in the columns
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	var_Columns->Add(L"C1");
	var_Columns->Add(L"C2");
	var_Columns->Add(L"C3");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Item 1"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant("SubItem 1.1"));
	var_Items->set_CellValue(TVariant(h),TVariant(2),TVariant("SubItem 1.2"));
	OutputDebugString( PChar(var_Items->get_CellValue(TVariant(h),TVariant(1))) );

1493
Is there any function I can use to indicate the Now() when using the ComputedFields, CondtionalFormats, ...
G2antt1->Columns->Add(L"Now")->ComputedField = L"date(``)";
G2antt1->Items->AddItem(TVariant(""));

1492
How can I get the start and end points of the bar once the BarResize event occurs
// BarResize event - Occurs when a bar is moved or resized.
void __fastcall TForm1::G2antt1BarResize(TObject *Sender,Exg2anttlib_tlb::HITEM   Item,Variant   Key)
{
	OutputDebugString( L"Start: " );
	OutputDebugString( PChar(G2antt1->Items->get_ItemBar(Item,TVariant(Key),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarStart)) );
	OutputDebugString( L"End: " );
	OutputDebugString( PChar(G2antt1->Items->get_ItemBar(Item,TVariant(Key),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarEnd)) );
}

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2009,12,31).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,96);
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Task"));
G2antt1->Columns->Add(L"Types");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2010,1,4).operator double()),TVariant(TDateTime(2010,1,9).operator double()),TVariant(""),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2010,1,4).operator double()),TVariant(TDateTime(2010,1,9).operator double()),TVariant(""),TNoParam());
G2antt1->EndUpdate();

1491
My chart displays hours, the question would be if possible to let user resizes the bars up to 1/2 hour, or a half an hour
G2antt1->BeginUpdate();
G2antt1->DefaultItemHeight = 22;
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
	var_Chart->LevelCount = 2;
	var_Chart->UnitScale = Exg2anttlib_tlb::UnitEnum::exHour;
	var_Chart->ResizeUnitScale = Exg2anttlib_tlb::UnitEnum::exMinute;
	var_Chart->ResizeUnitCount = 30;
	var_Chart->set_PaneWidth(false,48);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exAllLines;
	var_Chart->get_Level(1)->DrawGridLines = true;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddItem(TVariant("Task"));
	var_Items->AddItem(TVariant("Task"));
	var_Items->AddItem(TVariant("Task"));
	var_Items->AddItem(TVariant("Task"));
	var_Items->AddItem(TVariant("Task"));
G2antt1->EndUpdate();

1490
How can I show the dates in the title
G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2002,12,30).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,0);
	var_Chart->UnitScale = Exg2anttlib_tlb::UnitEnum::exHour;
	var_Chart->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exAllLines;
	var_Chart->get_Level(0)->Alignment = Exg2anttlib_tlb::AlignmentEnum::exHOutside | Exg2anttlib_tlb::AlignmentEnum::CenterAlignment;
G2antt1->EndUpdate();

1489
If I vertically scroll the control the image flows fluently. But when I scroll on the horizontal chart's scrollbar the images only shows after I release the click button. Can I make it scroll fluently like the vertical scrollbar
G2antt1->Chart->set_PaneWidth(false,0);
G2antt1->Chart->ToolTip = L"";

1488
How can I programmatically add a bar during the CreateBar event
// CreateBar event - Fired when the user creates a new bar.
void __fastcall TForm1::G2antt1CreateBar(TObject *Sender,Exg2anttlib_tlb::HITEM   Item,DATE   DateStart,DATE   DateEnd)
{
	Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
		TVariant k = TVariant(var_Items->get_ItemBar(Item,TVariant(""),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarsCount));
		var_Items->AddBar(Item,TVariant("Order"),TVariant(DateStart),TVariant(DateEnd),TVariant(k),TVariant("your text"));
	OutputDebugString( PChar(G2antt1->Items->get_ItemBar(Item,TVariant(""),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarsCount)) );
}

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarManual;
	var_Chart->set_PaneWidth(false,48);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->Bars->Copy(L"Task",L"Order");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddItem(TVariant(1));
	var_Items->AddItem(TVariant(2));
	var_Items->AddItem(TVariant(3));
G2antt1->EndUpdate();

1487
How can I move more bars by code
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,48);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2001,1,1).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TVariant("A"),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TVariant("B"),TNoParam());
	var_Items->set_ItemBar(0,TVariant("<*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarMove,TVariant(1));
	var_Items->set_ItemBar(0,TVariant("<A*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarMove,TVariant(1));
	var_Items->set_ItemBar(0,TVariant("<B*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarMove,TVariant(1));

1486
How can I move a bar by code
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,48);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,1).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TVariant("A"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("A"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarMove,TVariant(1));

1485
How can I clip the notes to the items zone only

G2antt1->BeginUpdate();
G2antt1->Images(TVariant(String("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTq") +
"lVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m" +
"0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/y" +
"NAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA="));
G2antt1->AntiAliasing = true;
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->set_PaneWidth(false,96);
	var_Chart->LevelCount = 2;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddItem(TNoParam());
	long h = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,5).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TVariant("1"),TNoParam());
Exg2anttlib_tlb::INotesPtr var_Notes = G2antt1->Chart->Notes;
	Exg2anttlib_tlb::INotePtr var_Note = var_Notes->Add(TVariant("1"),TVariant(G2antt1->Items->get_ItemByIndex(1)),TVariant("1"),L"<img>2</img>");
		var_Note->set_PartShadow(Exg2anttlib_tlb::NotePartEnum::exNoteEnd,false);
		var_Note->set_PartBorderSize(Exg2anttlib_tlb::NotePartEnum::exNoteEnd,0);
		var_Note->ClearPartBackColor(Exg2anttlib_tlb::NotePartEnum::exNoteEnd);
		var_Note->set_PartCanMove(Exg2anttlib_tlb::NotePartEnum::exNoteEnd,true);
		var_Note->set_RelativePosition(TVariant(0.5));
		var_Note->set_PartVOffset(Exg2anttlib_tlb::NotePartEnum::exNoteEnd,-36);
	var_Notes->ClipTo = Exg2anttlib_tlb::NotesClipToEnum::exNotesClipToItems;
G2antt1->EndUpdate();

1484
How can I put two bars of various types, in the event of conflict do not coincide

G2antt1->BeginUpdate();
G2antt1->DefaultItemHeight = 22;
G2antt1->Columns->Add(L"Task");
G2antt1->ScrollBySingleLine = true;
G2antt1->BackColorAlternate = RGB(240,240,240);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,48);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->LevelCount = 2;
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Task"));
		var_Bar->OverlaidType = Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsStackAutoArrange | Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsStack;
		var_Bar->OverlaidGroup = L"NewTask";
	Exg2anttlib_tlb::IBarPtr var_Bar1 = var_Chart->Bars->Copy(L"Task",L"NewTask");
		var_Bar1->OverlaidType = Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsStackAutoArrange | Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsStack;
		var_Bar1->OverlaidGroup = L"Task";
		var_Bar1->Color = RGB(255,0,0);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Default"));
	long h = var_Items->AddItem(TVariant("Overlaid"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("A1"),TVariant("A1"));
	var_Items->AddBar(h,TVariant("NewTask"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,5).operator double()),TVariant("A2"),TVariant("A2"));
	var_Items->AddBar(h,TVariant("NewTask"),TVariant(TDateTime(2001,1,4).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TVariant("A3"),TVariant("A3"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,4).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TVariant("A4"),TVariant("A4"));
	h1 = var_Items->AddItem(TVariant("Default"));
G2antt1->EndUpdate();

1483
How can I run trigger an event which, after clicking on the item/bar gives the key/name or item id
// MouseDown event - Occurs when the user presses a mouse button.
void __fastcall TForm1::G2antt1MouseDown(TObject *Sender,short   Button,short   Shift,int   X,int   Y)
{
	long item = G2antt1->ItemFromPoint[-1,-1,column,hit];
	TVariant key = TVariant(G2antt1->Chart->get_BarFromPoint(-1,-1));
	OutputDebugString( L"Item:" );
	OutputDebugString( L"item" );
	OutputDebugString( L"Key:" );
	OutputDebugString( L"key" );
	OutputDebugString( L"CellValue(i,0):" );
	OutputDebugString( PChar(G2antt1->Items->get_CellValue(TVariant(item),TVariant(0))) );
	G2antt1->Items->set_ItemBar(item,TVariant(key),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarColor,TVariant(255));
}

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,29).operator double()));
	var_Chart->set_PaneWidth(false,64);
	var_Chart->LevelCount = 2;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K1"),TNoParam());
	long h2 = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,4).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TVariant("K2"),TNoParam());
	var_Items->AddLink(TVariant("L1"),h1,TVariant("K1"),h2,TVariant("K2"));
	long h3 = var_Items->AddItem(TVariant("Task 3"));
	var_Items->AddBar(h3,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("K3"),TNoParam());
	var_Items->AddLink(TVariant("L2"),h2,TVariant("K2"),h3,TVariant("K3"));
G2antt1->EndUpdate();

1482
How can I change the check-boxes appearance

G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Default");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column->PartialCheck = true;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Root"));
	var_Items->InsertItem(h,TNoParam(),TVariant("Child 1"));
	var_Items->InsertItem(h,TNoParam(),TVariant("Child 2"));
	var_Items->set_ExpandItem(h,true);
Exg2anttlib_tlb::IAppearancePtr var_Appearance = G2antt1->VisualAppearance;
	var_Appearance->Add(1,TVariant("XP:Button 3 12"));
	var_Appearance->Add(2,TVariant("XP:Button 3 11"));
	var_Appearance->Add(3,TVariant("XP:Button 3 10"));
G2antt1->CheckImage[Exg2anttlib_tlb::CheckStateEnum::Unchecked] = 16777216;
G2antt1->CheckImage[Exg2anttlib_tlb::CheckStateEnum::Checked] = 33554432;
G2antt1->CheckImage[Exg2anttlib_tlb::CheckStateEnum::PartialChecked] = 50331648;

1481
How can I change the color for the control's split bar (sample 1)

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Default");
G2antt1->Background[Exg2anttlib_tlb::BackgroundPartEnum::exSplitBar] = RGB(0,0,1);
G2antt1->BackColorLevelHeader = G2antt1->BackColor;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,64);
	var_Chart->HistogramVisible = true;
	var_Chart->HistogramHeight = 64;
	var_Chart->OverviewHeight = 48;
	var_Chart->OverviewVisible = Exg2anttlib_tlb::OverviewVisibleEnum::exOverviewShowAll;
G2antt1->EndUpdate();

1480
Is it possible to display ONLY the working hours

Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->LevelCount = 2;
	Exg2anttlib_tlb::ILevelPtr var_Level = var_Chart->get_Level(0);
		var_Level->set_Label(TVariant(4096));
		var_Level->Alignment = Exg2anttlib_tlb::AlignmentEnum::exHOutside | Exg2anttlib_tlb::AlignmentEnum::CenterAlignment;
	Exg2anttlib_tlb::ILevelPtr var_Level1 = var_Chart->get_Level(1);
		var_Level1->set_Label(TVariant("<%hh%>"));
		var_Level1->Count = 6;
	var_Chart->UnitWidth = 26;
	var_Chart->set_PaneWidth(false,0);
	var_Chart->NonworkingHours = 15728895;
	var_Chart->ShowNonworkingUnits = false;
	var_Chart->ShowNonworkingHours = false;

1479
How can I display the end of the day in the chart's header

Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->LevelCount = 2;
	Exg2anttlib_tlb::ILevelPtr var_Level = var_Chart->get_Level(0);
		var_Level->set_Label(TVariant(4096));
		var_Level->Alignment = Exg2anttlib_tlb::AlignmentEnum::exHOutside | Exg2anttlib_tlb::AlignmentEnum::CenterAlignment;
	Exg2anttlib_tlb::ILevelPtr var_Level1 = var_Chart->get_Level(1);
		var_Level1->set_Label(TVariant("<%hh%>"));
		var_Level1->Count = 6;
		var_Level1->set_ReplaceLabel(L"08",L"<b>8</b> <font ;6>am");
		var_Level1->set_ReplaceLabel(L"14",L"<b>8</b> <font ;6>pm");
	var_Chart->UnitWidth = 26;
	var_Chart->set_PaneWidth(false,0);
	var_Chart->NonworkingHours = 15728895;
	var_Chart->ShowNonworkingUnits = false;
	var_Chart->ShowNonworkingHours = false;

1478
How can I display the +/- expanding buttons in the chart section

G2antt1->BeginUpdate();
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exLinesAtRoot;
G2antt1->Indent = 13;
G2antt1->HasButtons = Exg2anttlib_tlb::ExpandButtonEnum::exWPlus;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2010,12,25).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,0);
	var_Chart->ColumnsFormatLevel = L"0";
	var_Chart->SelBackColor = G2antt1->SelBackColor;
	var_Chart->SelForeColor = G2antt1->SelForeColor;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"P1");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column->PartialCheck = true;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Root"));
	var_Items->AddBar(var_Items->InsertItem(h,TNoParam(),TVariant("Child 1")),TVariant("Task"),TVariant(TDateTime(2011,1,2).operator double()),TVariant(TDateTime(2011,1,5).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->InsertItem(h,TNoParam(),TVariant("Child 2")),TVariant("Task"),TVariant(TDateTime(2011,1,4).operator double()),TVariant(TDateTime(2011,1,7).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->InsertItem(h,TNoParam(),TVariant("Child 3")),TVariant("Task"),TVariant(TDateTime(2011,1,7).operator double()),TVariant(TDateTime(2011,1,8).operator double()),TNoParam(),TNoParam());
	var_Items->set_ExpandItem(h,true);
G2antt1->EndUpdate();

1477
Is it possible to display the columns in the chart aligned to the right

G2antt1->BeginUpdate();
G2antt1->DefaultItemHeight = 24;
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Key");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(0));
	var_Column->Visible = false;
	var_Column->Alignment = Exg2anttlib_tlb::AlignmentEnum::RightAlignment;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,30).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,0);
	var_Chart->ColumnsFormatLevel = L"|,1:52";
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AllowCellValueToItemBar = true;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Split"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Progress"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

1476
How can I display a border in the chart

G2antt1->BeginUpdate();
G2antt1->DefaultItemHeight = 24;
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Key");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(0));
	var_Column->Visible = false;
	var_Column->Alignment = Exg2anttlib_tlb::AlignmentEnum::CenterAlignment;
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellForeColor,TVariant(255));
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,30).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,0);
	var_Chart->ColumnsFormatLevel = L"1:52,\\\"\\\"[bg=255]:2";
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AllowCellValueToItemBar = true;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Split"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Progress"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

1475
How can I change the font to display the columns in the chart (Method 2)

G2antt1->BeginUpdate();
G2antt1->DefaultItemHeight = 24;
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Key");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(0));
	var_Column->Visible = false;
Exg2anttlib_tlb::IConditionalFormatPtr var_ConditionalFormat = G2antt1->ConditionalFormats->Add(L"1",TNoParam());
	var_ConditionalFormat->Bold = true;
	var_ConditionalFormat->ApplyTo = Exg2anttlib_tlb::FormatApplyToEnum(0x1);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,30).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,48);
	var_Chart->ColumnsFormatLevel = L"1";
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AllowCellValueToItemBar = true;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Split"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Progress"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

1474
How can I change the font to display the columns in the chart (Method 1)

G2antt1->BeginUpdate();
G2antt1->DefaultItemHeight = 24;
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Key");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(0));
	var_Column->Visible = false;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,30).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,48);
	var_Chart->ColumnsFormatLevel = L"1";
	var_Chart->ColumnsFont = (IFontDisp*)(G2antt1->Font);
	/*
	Select the Component\Import Component...\Import a Type Library,
	to import the following Type Library:

		OLE Automation

	TypeLib: stdole2.tlb

	to define the namespace: Stdole_tlb
*/
//#include "STDOLE_TLB.h"
	Stdole_tlb::FontPtr var_StdFont = var_Chart->ColumnsFont;
		var_StdFont->Size = TVariant(long(12));
		var_StdFont->Name = L"Tahoma";
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AllowCellValueToItemBar = true;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Split"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Progress"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

1473
How can I change the column's background color when it is displayed on the chart (Method 2)

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Key");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(0));
	var_Column->Visible = false;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,30).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,48);
	var_Chart->ColumnsFormatLevel = L"1[bg=255]:52";
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AllowCellValueToItemBar = true;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Split"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Progress"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

1472
How can I change the column's background color when it is displayed on the chart (Method 1)

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Key");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(0));
	var_Column->Visible = false;
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellBackColor,TVariant(15790320));
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,30).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,48);
	var_Chart->ColumnsFormatLevel = L"1:52";
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AllowCellValueToItemBar = true;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Split"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Progress"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

1471
Can the chart display any column

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Start");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(1));
	var_Column->Visible = false;
	var_Column->Alignment = Exg2anttlib_tlb::AlignmentEnum::LeftAlignment;
Exg2anttlib_tlb::IColumnPtr var_Column1 = G2antt1->Columns->Add(L"End");
	var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(2));
	var_Column1->Visible = false;
	var_Column1->Alignment = Exg2anttlib_tlb::AlignmentEnum::RightAlignment;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,48);
	var_Chart->ColumnsFormatLevel = L"1:52,|,2:52";
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AllowCellValueToItemBar = true;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2001,1,4).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

1470
Is it possible to display a check-box column on the chart

G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Check");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column->Visible = false;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,48);
	var_Chart->ColumnsFormatLevel = L"1";
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2001,1,4).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TNoParam(),TNoParam());

1469
Is it possible to disable the cell's editor context menu
Exg2anttlib_tlb::IEditorPtr var_Editor = G2antt1->Columns->Add(L"Edit")->Editor;
	var_Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::EditType;
	var_Editor->set_Option(Exg2anttlib_tlb::EditorOptionEnum::exEditAllowContextMenu,TVariant(false));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddItem(TVariant(10));
	var_Items->AddItem(TVariant(20));

1468
How can I find a value in a drop down editor
Exg2anttlib_tlb::IEditorPtr var_Editor = G2antt1->Columns->Add(L"DropDownList")->Editor;
	var_Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::DropDownListType;
	var_Editor->AddItem(1,L"DDList 1",TNoParam());
	var_Editor->AddItem(2,L"DDList 2",TNoParam());
	var_Editor->AddItem(3,L"DDList 3",TNoParam());
Exg2anttlib_tlb::IEditorPtr var_Editor1 = G2antt1->Columns->Add(L"DropDown")->Editor;
	var_Editor1->EditType = Exg2anttlib_tlb::EditTypeEnum::DropDownType;
	var_Editor1->AddItem(1,L"DDType 1",TNoParam());
	var_Editor1->AddItem(2,L"DDType 2",TNoParam());
	var_Editor1->AddItem(3,L"DDType 3",TNoParam());
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->set_CellValue(TVariant(->AddItem(TVariant(1))),TVariant(1),TVariant(G2antt1->Columns->get_Item(TVariant(1))->Editor->get_FindItem(TVariant(1))));
	var_Items->set_CellValue(TVariant(->AddItem(TVariant(2))),TVariant(1),TVariant(G2antt1->Columns->get_Item(TVariant(1))->Editor->get_FindItem(TVariant(2))));

1467
What is the difference between DropDownType and DropDownListType
Exg2anttlib_tlb::IEditorPtr var_Editor = G2antt1->Columns->Add(L"DropDownList")->Editor;
	var_Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::DropDownListType;
	var_Editor->AddItem(1,L"First item",TNoParam());
	var_Editor->AddItem(2,L"Second item",TNoParam());
	var_Editor->AddItem(3,L"Third item",TNoParam());
Exg2anttlib_tlb::IEditorPtr var_Editor1 = G2antt1->Columns->Add(L"DropDown")->Editor;
	var_Editor1->EditType = Exg2anttlib_tlb::EditTypeEnum::DropDownType;
	var_Editor1->AddItem(1,L"First item",TNoParam());
	var_Editor1->AddItem(2,L"Second item",TNoParam());
	var_Editor1->AddItem(3,L"Third item",TNoParam());
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->set_CellValue(TVariant(var_Items->AddItem(TVariant(1))),TVariant(1),TVariant("Any"));
	var_Items->set_CellValue(TVariant(var_Items->AddItem(TVariant(2))),TVariant(1),TVariant("Any"));

1466
How can I mark or enlarge the selected bars, so I have a clear frame around (Method 3)

G2antt1->BeginUpdate();
G2antt1->DefaultItemHeight = 32;
Exg2anttlib_tlb::IAppearancePtr var_Appearance = G2antt1->VisualAppearance;
	var_Appearance->Add(1,TVariant("c:\\exontrol\\images\\normal.ebn"));
	var_Appearance->Add(2,TVariant("CP:1 -2 -2 2 2"));
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,48);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2002,1,1).operator double()));
	var_Chart->SelBarColor = 0x2ff0000;
	var_Chart->Bars->get_Item(TVariant("Task"))->Color = 0x1000000;
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2002,1,2).operator double()),TVariant(TDateTime(2002,1,4).operator double()),TVariant("A"),TNoParam());
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2002,1,6).operator double()),TVariant(TDateTime(2002,1,10).operator double()),TVariant("B"),TNoParam());
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2002,1,11).operator double()),TVariant(TDateTime(2002,1,14).operator double()),TVariant("C"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("A"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarSelected,TVariant(true));
	var_Items->set_ItemBar(h,TVariant("B"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarSelected,TVariant(true));
G2antt1->EndUpdate();

1465
How can I mark or enlarge the selected bars, so I have a clear frame around (Method 2)

G2antt1->BeginUpdate();
G2antt1->DefaultItemHeight = 32;
Exg2anttlib_tlb::IAppearancePtr var_Appearance = G2antt1->VisualAppearance;
	var_Appearance->Add(1,TVariant("c:\\exontrol\\images\\normal.ebn"));
	var_Appearance->Add(2,TVariant("CP:1 -2 -2 2 2"));
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,48);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2002,1,1).operator double()));
	var_Chart->SelBarColor = 0x2000000;
	var_Chart->Bars->get_Item(TVariant("Task"))->Color = 0x1000000;
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2002,1,2).operator double()),TVariant(TDateTime(2002,1,4).operator double()),TVariant("A"),TNoParam());
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2002,1,6).operator double()),TVariant(TDateTime(2002,1,10).operator double()),TVariant("B"),TNoParam());
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2002,1,11).operator double()),TVariant(TDateTime(2002,1,14).operator double()),TVariant("C"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("A"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarSelected,TVariant(true));
	var_Items->set_ItemBar(h,TVariant("B"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarSelected,TVariant(true));
G2antt1->EndUpdate();

1464
How can I mark or enlarge the selected bars, so I have a clear frame around (Method 1)

G2antt1->BeginUpdate();
G2antt1->DefaultItemHeight = 32;
Exg2anttlib_tlb::IAppearancePtr var_Appearance = G2antt1->VisualAppearance;
	var_Appearance->Add(1,TVariant(String("gBFLBCJwBAEHhEJAEGg4BNkMQAAYAQGKIYBkAKBQAGaAoDDYNQwQwAAwjIKEEwsACEIrjKCVIgkHYJRjGEZxMAsEwjAoaQChEZRUhEMgxDDIIxAJIcaw0GSEZwgOQZB") +
"iOEYnDANMgzDLMZR7DajYymSA6LiKNo+QjKFB0NLMVRtEIIIzCSCaNomT4DS4NIi2DYcVhhMqBYbtCZZBo2FpZUxXdL0BJMVxbHKYJikW4pVjoAJ+TxccjVDQNJyLQ6r" +
"YzuAAKNpuO58RbdGDQHA9KyfLCEcTxYAMbp6X5kaBZVp2VCMRzbTLUIDzPNVCTrNIaJioAaMeiCG5NUzieqRNalLABFjZMIHDbtGynDIJZruW52+CLIZpWbEOiRXr2Tx" +
"xgGYp5Fie5mAYBgIgSFDrDOIZUmQZYiECXJUjIEQ3lUGgbEIRQcg+Hg8DEFxYFuOR/i+X5znufh/omBgCgCVwjn4BoBmCCAmAqApgkefgMgOYQID4DoELsUgTgUYYIC4" +
"F4GGGSAaBuBxhhgfgggUYgog4EYJGIaBJn6ChiBiLgsgkIpoj4J4BCMSJWDaDZjgiZgCEAQCAgA=="));
	var_Appearance->Add(2,TVariant("CP:1 -2 -2 2 2"));
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2002,1,1).operator double()));
	var_Chart->SelBarColor = 0x2000000;
	var_Chart->set_PaneWidth(false,48);
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2002,1,2).operator double()),TVariant(TDateTime(2002,1,4).operator double()),TVariant("A"),TNoParam());
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2002,1,6).operator double()),TVariant(TDateTime(2002,1,10).operator double()),TVariant("B"),TNoParam());
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2002,1,11).operator double()),TVariant(TDateTime(2002,1,14).operator double()),TVariant("C"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("A"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarSelected,TVariant(true));
	var_Items->set_ItemBar(h,TVariant("B"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarSelected,TVariant(true));
G2antt1->EndUpdate();

1463
How can I load my table from an Access 2007, using ADO
// AddItem event - Occurs after a new Item has been inserted to Items collection.
void __fastcall TForm1::G2antt1AddItem(TObject *Sender,Exg2anttlib_tlb::HITEM   Item)
{
	Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
		var_Items->AddBar(Item,TVariant("Task"),TVariant(var_Items->get_CellValue(TVariant(Item),TVariant(2))),TVariant(var_Items->get_CellValue(TVariant(Item),TVariant(4))),TNoParam(),TNoParam());
}

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(1994,8,3).operator double()));
	var_Chart->set_PaneWidth(false,256);
	var_Chart->LevelCount = 2;
	var_Chart->UnitScale = Exg2anttlib_tlb::UnitEnum::exDay;
	var_Chart->FirstWeekDay = Exg2anttlib_tlb::WeekDayEnum::exMonday;
	var_Chart->OverviewVisible = Exg2anttlib_tlb::OverviewVisibleEnum::exOverviewShowAllVisible;
G2antt1->ColumnAutoResize = false;
G2antt1->ContinueColumnScroll = false;
/*
	Select the Component\Import Component...\Import a Type Library,
	to import the following Type Library:

		Microsoft ActiveX Data Objects 6.1 Library

	TypeLib: msado15.dll

	to define the namespace: Adodb_tlb
*/
//#include "ADODB_TLB.h"
Adodb_tlb::_RecordsetPtr rs = Variant::CreateObject(L"ADOR.Recordset");
	rs->Open(TVariant("Orders"),TVariant("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExG2antt\\Sample\\Access\\misc.accdb"),Adodb_tlb::CursorTypeEnum::adOpenStatic,Adodb_tlb::LockTypeEnum::adLockOptimistic,0);
G2antt1->DataSource = (IDispatch*)rs;
G2antt1->Items->AllowCellValueToItemBar = true;
G2antt1->Columns->get_Item(TVariant(2))->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(1));
G2antt1->Columns->get_Item(TVariant(4))->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(2));
G2antt1->EndUpdate();

1462
Is it possible to enumerate the links without enumerating them

G2antt1->AntiAliasing = true;
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->set_PaneWidth(false,128);
	var_Chart->NonworkingDays = 0;
	var_Chart->LinksWidth = 2;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K1"),TNoParam());
	long h2 = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,6).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TVariant("K2"),TNoParam());
	var_Items->AddLink(TVariant("L1"),h1,TVariant("K1"),h2,TVariant("K2"));
	long h3 = var_Items->AddItem(TVariant("Task 3"));
	var_Items->AddBar(h3,TVariant("Task"),TVariant(TDateTime(2001,1,10).operator double()),TVariant(TDateTime(2001,1,12).operator double()),TVariant("K3"),TNoParam());
	var_Items->AddLink(TVariant("L2"),h2,TVariant("K2"),h3,TVariant("K3"));
	long h4 = var_Items->AddItem(TVariant("Task 4"));
	var_Items->AddBar(h4,TVariant("Task"),TVariant(TDateTime(2001,1,14).operator double()),TVariant(TDateTime(2001,1,16).operator double()),TVariant("K4"),TNoParam());
	var_Items->AddLink(TVariant("L3"),h3,TVariant("K3"),h4,TVariant("K4"));
	var_Items->set_Link(TVariant("<L*>"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkShowDir,TVariant(false));

1461
How can I display a vertical line in the chart
// Click event - Occurs when the user presses and then releases the left mouse button over the tree control.
void __fastcall TForm1::G2antt1Click(TObject *Sender)
{
	Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
		var_Chart->MarkNowColor = RGB(255,0,0);
		var_Chart->set_MarkNow(TVariant(var_Chart->get_DateFromPoint(-1,-1)));
}

Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2012,3,13).operator double()));
	var_Chart->set_PaneWidth(false,0);
	var_Chart->LevelCount = 2;
	var_Chart->MarkNowColor = RGB(0,0,0);
	var_Chart->MarkNowWidth = 3;
	var_Chart->UnitWidth = 32;
	var_Chart->ResizeUnitScale = Exg2anttlib_tlb::UnitEnum::exHour;

1460
How can I use the MarkNowColor to mark a time line different then the time on the machine

Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2012,3,13).operator double()));
	var_Chart->set_PaneWidth(false,0);
	var_Chart->LevelCount = 2;
	var_Chart->get_Level(0)->set_Label(TVariant(1048576));
	Exg2anttlib_tlb::ILevelPtr var_Level = var_Chart->get_Level(1);
		var_Level->set_Label(TVariant("<%ss%>"));
		var_Level->Count = 15;
	var_Chart->MarkNowColor = RGB(255,0,0);
	var_Chart->MarkNowWidth = 3;
	var_Chart->set_MarkNow(TVariant(TDateTime(2012,3,13,0,03,20,0).operator double()));

1459
Is it possible to show the current date time using a delay

Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,0);
	var_Chart->LevelCount = 2;
	var_Chart->get_Level(0)->set_Label(TVariant(1048576));
	Exg2anttlib_tlb::ILevelPtr var_Level = var_Chart->get_Level(1);
		var_Level->set_Label(TVariant("<%ss%>"));
		var_Level->Count = 15;
	var_Chart->MarkNowColor = RGB(0,0,255);
	var_Chart->MarkNowWidth = 3;
	var_Chart->MarkNowDelay = 0.00069444;
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Item 1")),TVariant("Task"),TVariant(TDateTime(2008,1,1).operator double()),TVariant(TDateTime(2018,1,1).operator double()),TNoParam(),TNoParam());

1458
What are the options to show the links between bars

G2antt1->AntiAliasing = true;
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->set_PaneWidth(false,128);
	var_Chart->NonworkingDays = 0;
	var_Chart->LinksWidth = 2;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddItem(TVariant(""));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K1"),TNoParam());
	long h2 = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddItem(TVariant(""));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,6).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TVariant("K2"),TNoParam());
	var_Items->AddLink(TVariant("L1"),h1,TVariant("K1"),h2,TVariant("K2"));
	long h3 = var_Items->AddItem(TVariant("Task 3"));
	var_Items->AddItem(TVariant(""));
	var_Items->AddBar(h3,TVariant("Task"),TVariant(TDateTime(2001,1,12).operator double()),TVariant(TDateTime(2001,1,14).operator double()),TVariant("K3"),TNoParam());
	var_Items->AddLink(TVariant("L2"),h2,TVariant("K2"),h3,TVariant("K3"));
	var_Items->set_Link(TVariant("L2"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkShowRound,TVariant(-1));
	long h4 = var_Items->AddItem(TVariant("Task 4"));
	var_Items->AddBar(h4,TVariant("Task"),TVariant(TDateTime(2001,1,18).operator double()),TVariant(TDateTime(2001,1,20).operator double()),TVariant("K4"),TNoParam());
	var_Items->AddLink(TVariant("L3"),h3,TVariant("K3"),h4,TVariant("K4"));
	var_Items->set_Link(TVariant("L3"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkShowRound,TVariant(1));
	var_Items->AddItem(TVariant(""));
	long h5 = var_Items->AddItem(TVariant("Task 5"));
	var_Items->AddBar(h5,TVariant("Task"),TVariant(TDateTime(2001,1,22).operator double()),TVariant(TDateTime(2001,1,24).operator double()),TVariant("K5"),TNoParam());
	var_Items->AddLink(TVariant("L4"),h4,TVariant("K4"),h5,TVariant("K5"));
	var_Items->set_Link(TVariant("L4"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkShowRound,TVariant(2));

1457
Is it possible to specify the link between bars to be a wider line

G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->set_PaneWidth(false,128);
	var_Chart->NonworkingDays = 0;
	var_Chart->LinksStyle = Exg2anttlib_tlb::LinkStyleEnum::exLinkSolid;
	var_Chart->LinksWidth = 2;
	var_Chart->LinksColor = RGB(255,0,0);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K1"),TNoParam());
	long h2 = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,6).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TVariant("K2"),TNoParam());
	var_Items->AddLink(TVariant("L1"),h1,TVariant("K1"),h2,TVariant("K2"));
	long h3 = var_Items->AddItem(TVariant("Task 3"));
	var_Items->AddBar(h3,TVariant("Task"),TVariant(TDateTime(2001,1,10).operator double()),TVariant(TDateTime(2001,1,12).operator double()),TVariant("K3"),TNoParam());
	var_Items->AddLink(TVariant("L2"),h2,TVariant("K2"),h3,TVariant("K3"));

1456
Is it possible to create a link between the two specified bars so that the link was a straight line

G2antt1->Columns->Add(L"Task");
G2antt1->AntiAliasing = true;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->set_PaneWidth(false,128);
	var_Chart->NonworkingDays = 0;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K1"),TNoParam());
	long h2 = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,6).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TVariant("K2"),TNoParam());
	var_Items->AddLink(TVariant("L1"),h1,TVariant("K1"),h2,TVariant("K2"));
	var_Items->set_Link(TVariant("L1"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkStyle,TVariant(0));
	var_Items->set_Link(TVariant("L1"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkWidth,TVariant(2));
	var_Items->set_Link(TVariant("L1"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkColor,TVariant(255));
	var_Items->set_Link(TVariant("L1"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkShowRound,TVariant(2));
	long h3 = var_Items->AddItem(TVariant("Task 3"));
	var_Items->AddBar(h3,TVariant("Task"),TVariant(TDateTime(2001,1,10).operator double()),TVariant(TDateTime(2001,1,12).operator double()),TVariant("K3"),TNoParam());
	var_Items->AddLink(TVariant("L2"),h2,TVariant("K2"),h3,TVariant("K3"));

1455
I associate the bars with my columns, Start and End, but can not get it working for bars with non-empty keys. What am I doing wrong

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	var_Columns->Add(L"Tasks");
	Exg2anttlib_tlb::IColumnPtr var_Column = var_Columns->Add(L"Start");
		var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(1));
		var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarKey,TVariant("A"));
	Exg2anttlib_tlb::IColumnPtr var_Column1 = var_Columns->Add(L"End");
		var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(2));
		var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarKey,TVariant("A"));
G2antt1->Items->AllowCellValueToItemBar = true;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,256);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2002,1,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->Bars->get_Item(TVariant("Task"))->OverlaidType = Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsStack;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2002,1,4).operator double()),TVariant(TDateTime(2002,1,8).operator double()),TVariant("A"),TVariant("A"));
	long h = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2002,1,6).operator double()),TVariant(TDateTime(2002,1,10).operator double()),TVariant("A"),TVariant("A"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2002,1,4).operator double()),TVariant(TDateTime(2002,1,8).operator double()),TVariant("B"),TVariant("B"));
	var_Items->set_ItemBar(h,TVariant("B"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarColor,TVariant(255));
G2antt1->EndUpdate();

1454
The right pane needs to show ONLY the hours 6am to 9pm (every hour) for one day only and the user should not to be able to scroll left or right nor see any other hours. How can I do that

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_ScrollRange(Exg2anttlib_tlb::ScrollRangeEnum::exStartDate,TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->set_ScrollRange(Exg2anttlib_tlb::ScrollRangeEnum::exEndDate,TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->UnitScale = Exg2anttlib_tlb::UnitEnum::exHour;
	var_Chart->NonworkingHours = 12582975;
	var_Chart->ShowNonworkingUnits = false;
	var_Chart->ShowNonworkingHours = false;
	var_Chart->get_Level(0)->Alignment = Exg2anttlib_tlb::AlignmentEnum::exHOutside | Exg2anttlib_tlb::AlignmentEnum::CenterAlignment;
	var_Chart->UnitWidth = 18;
	var_Chart->set_PaneWidth(true,294);
	var_Chart->ScrollBar = false;
G2antt1->OnResizeControl = Exg2anttlib_tlb::OnResizeControlEnum::exDisableSplitter;
G2antt1->EndUpdate();

1453
Is it possible to count only a specified type of bars without enumerating them
G2antt1->Columns->Add(L"Tasks");
G2antt1->Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K1"),TVariant("K1"));
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Progress"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,5).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("P3"),TVariant("P3"));
	OutputDebugString( L"K*" );
	OutputDebugString( PChar(var_Items->get_ItemBar(0,TVariant("<K*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarsCount)) );
	OutputDebugString( L"K* P*" );
	OutputDebugString( PChar(var_Items->get_ItemBar(0,TVariant("<K* P*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarsCount)) );

1452
How can I count or get the numbers of the bars in the chart
G2antt1->Columns->Add(L"Tasks");
G2antt1->Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K1"),TVariant("K1"));
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("A2"),TVariant("A2"));
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K3"),TVariant("K3"));
	OutputDebugString( L"All" );
	OutputDebugString( PChar(var_Items->get_ItemBar(0,TVariant("<*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarsCount)) );
	OutputDebugString( L"A*" );
	OutputDebugString( PChar(var_Items->get_ItemBar(0,TVariant("<A*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarsCount)) );
	OutputDebugString( L"K*" );
	OutputDebugString( PChar(var_Items->get_ItemBar(0,TVariant("<K*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarsCount)) );

1451
Is it possible to remove only specified bars from ALL items at once
G2antt1->Columns->Add(L"Tasks");
G2antt1->Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K1"),TVariant("K1"));
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("A2"),TVariant("A2"));
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K3"),TVariant("K3"));
	var_Items->RemoveBar(0,TVariant("<K*>"));

1450
How can I remove all bars from the chart (method 2)
G2antt1->Columns->Add(L"Tasks");
G2antt1->Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K1"),TVariant("K1"));
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("A2"),TVariant("A2"));
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K3"),TVariant("K3"));
	var_Items->ClearBars(0);

1449
How can I remove all bars from the chart (method 1)
G2antt1->Columns->Add(L"Tasks");
G2antt1->Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K1"),TVariant("K1"));
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("A2"),TVariant("A2"));
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K3"),TVariant("K3"));
	var_Items->RemoveBar(0,TVariant("<*>"));

1448
Is it possible to update at once a property for several bars without enumerating them
G2antt1->Columns->Add(L"Tasks");
G2antt1->Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K1"),TVariant("K1"));
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("A2"),TVariant("A2"));
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K3"),TVariant("K3"));
	var_Items->set_ItemBar(0,TVariant("<K*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarColor,TVariant(255));

1447
Is it possible to update at once a property of ALL bars without enumerating them
G2antt1->Columns->Add(L"Tasks");
G2antt1->Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K1"),TVariant("K1"));
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("A2"),TVariant("A2"));
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K3"),TVariant("K3"));
	var_Items->set_ItemBar(0,TVariant("<*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarColor,TVariant(255));

1446
How do I prevent selecting a new item when selecting a bar
G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,29).operator double()));
	var_Chart->set_PaneWidth(false,64);
	var_Chart->LevelCount = 2;
	var_Chart->SelectOnClick = false;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K1"),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2001,1,4).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TVariant("K2"),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("K3"),TNoParam());
	var_Items->set_SelectItem(var_Items->FirstVisibleItem,true);
G2antt1->EndUpdate();

1445
Is it possible to find out all incoming bars ( recursively )

// MouseMove event - Occurs when the user moves the mouse.
void __fastcall TForm1::G2antt1MouseMove(TObject *Sender,short   Button,short   Shift,int   X,int   Y)
{
	TVariant b = TVariant(G2antt1->Chart->get_BarFromPoint(-1,-1));
	long i = G2antt1->ItemFromPoint[-1,-1,c,hit];
	OutputDebugString( PChar(G2antt1->Items->get_ItemBar(i,TVariant(b),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarIncomingBarsAllDebug)) );
}

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,96);
	var_Chart->NonworkingDays = 0;
	var_Chart->AllowLinkBars = true;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("A"),TVariant("A"));
	long h2 = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,5).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TVariant("B"),TVariant("B"));
	var_Items->AddLink(TVariant("L1"),h1,TVariant("A"),h2,TVariant("B"));
	long h3 = var_Items->AddItem(TVariant("Task 3"));
	var_Items->AddBar(h3,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("C"),TVariant("C"));
	var_Items->AddLink(TVariant("L2"),h2,TVariant("B"),h3,TVariant("C"));
	long h4 = var_Items->AddItem(TVariant("Task 4"));
	var_Items->AddBar(h4,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("D"),TVariant("D"));
	var_Items->AddLink(TVariant("L3"),h1,TVariant("A"),h4,TVariant("D"));
G2antt1->EndUpdate();

1444
How do I find the incoming bars
// MouseMove event - Occurs when the user moves the mouse.
void __fastcall TForm1::G2antt1MouseMove(TObject *Sender,short   Button,short   Shift,int   X,int   Y)
{
	TVariant b = TVariant(G2antt1->Chart->get_BarFromPoint(-1,-1));
	long i = G2antt1->ItemFromPoint[-1,-1,c,hit];
	OutputDebugString( PChar(G2antt1->Items->get_ItemBar(i,TVariant(b),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarIncomingBarsDebug)) );
}

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,96);
	var_Chart->NonworkingDays = 0;
	var_Chart->AllowLinkBars = true;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("A"),TVariant("A"));
	long h2 = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,5).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TVariant("B"),TVariant("B"));
	var_Items->AddLink(TVariant("L1"),h1,TVariant("A"),h2,TVariant("B"));
	long h3 = var_Items->AddItem(TVariant("Task 3"));
	var_Items->AddBar(h3,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("C"),TVariant("C"));
	var_Items->AddLink(TVariant("L2"),h2,TVariant("B"),h3,TVariant("C"));
	long h4 = var_Items->AddItem(TVariant("Task 4"));
	var_Items->AddBar(h4,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("D"),TVariant("D"));
	var_Items->AddLink(TVariant("L3"),h1,TVariant("A"),h4,TVariant("D"));
G2antt1->EndUpdate();

1443
Is it possible to find out all incoming links ( recursively ). Incoming link is a link from another bar to the current bar
// MouseMove event - Occurs when the user moves the mouse.
void __fastcall TForm1::G2antt1MouseMove(TObject *Sender,short   Button,short   Shift,int   X,int   Y)
{
	TVariant b = TVariant(G2antt1->Chart->get_BarFromPoint(-1,-1));
	long i = G2antt1->ItemFromPoint[-1,-1,c,hit];
	OutputDebugString( PChar(G2antt1->Items->get_ItemBar(i,TVariant(b),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarIncomingLinksAllAsString)) );
}

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,96);
	var_Chart->NonworkingDays = 0;
	var_Chart->AllowLinkBars = true;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("A"),TVariant("A"));
	long h2 = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,5).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TVariant("B"),TVariant("B"));
	var_Items->AddLink(TVariant("L1"),h1,TVariant("A"),h2,TVariant("B"));
	long h3 = var_Items->AddItem(TVariant("Task 3"));
	var_Items->AddBar(h3,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("C"),TVariant("C"));
	var_Items->AddLink(TVariant("L2"),h2,TVariant("B"),h3,TVariant("C"));
	long h4 = var_Items->AddItem(TVariant("Task 4"));
	var_Items->AddBar(h4,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("D"),TVariant("D"));
	var_Items->AddLink(TVariant("L3"),h1,TVariant("A"),h4,TVariant("D"));
G2antt1->EndUpdate();

1442
How do I find the incoming links. Incoming link is link from another bar to the current bar
// MouseMove event - Occurs when the user moves the mouse.
void __fastcall TForm1::G2antt1MouseMove(TObject *Sender,short   Button,short   Shift,int   X,int   Y)
{
	TVariant b = TVariant(G2antt1->Chart->get_BarFromPoint(-1,-1));
	long i = G2antt1->ItemFromPoint[-1,-1,c,hit];
	OutputDebugString( PChar(G2antt1->Items->get_ItemBar(i,TVariant(b),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarIncomingLinksAsString)) );
}

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,96);
	var_Chart->NonworkingDays = 0;
	var_Chart->AllowLinkBars = true;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("A"),TVariant("A"));
	long h2 = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,5).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TVariant("B"),TVariant("B"));
	var_Items->AddLink(TVariant("L1"),h1,TVariant("A"),h2,TVariant("B"));
	long h3 = var_Items->AddItem(TVariant("Task 3"));
	var_Items->AddBar(h3,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("C"),TVariant("C"));
	var_Items->AddLink(TVariant("L2"),h2,TVariant("B"),h3,TVariant("C"));
	long h4 = var_Items->AddItem(TVariant("Task 4"));
	var_Items->AddBar(h4,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("D"),TVariant("D"));
	var_Items->AddLink(TVariant("L3"),h1,TVariant("A"),h4,TVariant("D"));
G2antt1->EndUpdate();

1441
Is it possible to find out all outgoing bars ( recursively )
// MouseMove event - Occurs when the user moves the mouse.
void __fastcall TForm1::G2antt1MouseMove(TObject *Sender,short   Button,short   Shift,int   X,int   Y)
{
	TVariant b = TVariant(G2antt1->Chart->get_BarFromPoint(-1,-1));
	long i = G2antt1->ItemFromPoint[-1,-1,c,hit];
	OutputDebugString( PChar(G2antt1->Items->get_ItemBar(i,TVariant(b),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarOutgoingBarsAllDebug)) );
}

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,96);
	var_Chart->NonworkingDays = 0;
	var_Chart->AllowLinkBars = true;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("A"),TVariant("A"));
	long h2 = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,5).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TVariant("B"),TVariant("B"));
	var_Items->AddLink(TVariant("L1"),h1,TVariant("A"),h2,TVariant("B"));
	long h3 = var_Items->AddItem(TVariant("Task 3"));
	var_Items->AddBar(h3,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("C"),TVariant("C"));
	var_Items->AddLink(TVariant("L2"),h2,TVariant("B"),h3,TVariant("C"));
	long h4 = var_Items->AddItem(TVariant("Task 4"));
	var_Items->AddBar(h4,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("D"),TVariant("D"));
	var_Items->AddLink(TVariant("L3"),h1,TVariant("A"),h4,TVariant("D"));
G2antt1->EndUpdate();

1440
How do I find the outgoing bars
// MouseMove event - Occurs when the user moves the mouse.
void __fastcall TForm1::G2antt1MouseMove(TObject *Sender,short   Button,short   Shift,int   X,int   Y)
{
	TVariant b = TVariant(G2antt1->Chart->get_BarFromPoint(-1,-1));
	long i = G2antt1->ItemFromPoint[-1,-1,c,hit];
	OutputDebugString( PChar(G2antt1->Items->get_ItemBar(i,TVariant(b),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarOutgoingBarsDebug)) );
}

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,96);
	var_Chart->NonworkingDays = 0;
	var_Chart->AllowLinkBars = true;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("A"),TVariant("A"));
	long h2 = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,5).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TVariant("B"),TVariant("B"));
	var_Items->AddLink(TVariant("L1"),h1,TVariant("A"),h2,TVariant("B"));
	long h3 = var_Items->AddItem(TVariant("Task 3"));
	var_Items->AddBar(h3,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("C"),TVariant("C"));
	var_Items->AddLink(TVariant("L2"),h2,TVariant("B"),h3,TVariant("C"));
	long h4 = var_Items->AddItem(TVariant("Task 4"));
	var_Items->AddBar(h4,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("D"),TVariant("D"));
	var_Items->AddLink(TVariant("L3"),h1,TVariant("A"),h4,TVariant("D"));
G2antt1->EndUpdate();

1439
Is it possible to find out all outgoing links ( recursively ). Outgoing link is link from a bar to another bar
// MouseMove event - Occurs when the user moves the mouse.
void __fastcall TForm1::G2antt1MouseMove(TObject *Sender,short   Button,short   Shift,int   X,int   Y)
{
	TVariant b = TVariant(G2antt1->Chart->get_BarFromPoint(-1,-1));
	long i = G2antt1->ItemFromPoint[-1,-1,c,hit];
	OutputDebugString( PChar(G2antt1->Items->get_ItemBar(i,TVariant(b),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarOutgoingLinksAllAsString)) );
}

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,96);
	var_Chart->NonworkingDays = 0;
	var_Chart->AllowLinkBars = true;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("A"),TVariant("A"));
	long h2 = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,5).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TVariant("B"),TVariant("B"));
	var_Items->AddLink(TVariant("L1"),h1,TVariant("A"),h2,TVariant("B"));
	long h3 = var_Items->AddItem(TVariant("Task 3"));
	var_Items->AddBar(h3,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("C"),TVariant("C"));
	var_Items->AddLink(TVariant("L2"),h2,TVariant("B"),h3,TVariant("C"));
	long h4 = var_Items->AddItem(TVariant("Task 4"));
	var_Items->AddBar(h4,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("D"),TVariant("D"));
	var_Items->AddLink(TVariant("L3"),h1,TVariant("A"),h4,TVariant("D"));
G2antt1->EndUpdate();

1438
How do I find the outgoing links. Outgoing link is link from a bar to another bar
// MouseMove event - Occurs when the user moves the mouse.
void __fastcall TForm1::G2antt1MouseMove(TObject *Sender,short   Button,short   Shift,int   X,int   Y)
{
	TVariant b = TVariant(G2antt1->Chart->get_BarFromPoint(-1,-1));
	long i = G2antt1->ItemFromPoint[-1,-1,c,hit];
	OutputDebugString( PChar(G2antt1->Items->get_ItemBar(i,TVariant(b),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarOutgoingLinksAsString)) );
}

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,96);
	var_Chart->NonworkingDays = 0;
	var_Chart->AllowLinkBars = true;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("A"),TVariant("A"));
	long h2 = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,5).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TVariant("B"),TVariant("B"));
	var_Items->AddLink(TVariant("L1"),h1,TVariant("A"),h2,TVariant("B"));
	long h3 = var_Items->AddItem(TVariant("Task 3"));
	var_Items->AddBar(h3,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("C"),TVariant("C"));
	var_Items->AddLink(TVariant("L2"),h2,TVariant("B"),h3,TVariant("C"));
	long h4 = var_Items->AddItem(TVariant("Task 4"));
	var_Items->AddBar(h4,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("D"),TVariant("D"));
	var_Items->AddLink(TVariant("L3"),h1,TVariant("A"),h4,TVariant("D"));
G2antt1->EndUpdate();

1437
How do I select a bar using the right-click
// MouseDown event - Occurs when the user presses a mouse button.
void __fastcall TForm1::G2antt1MouseDown(TObject *Sender,short   Button,short   Shift,int   X,int   Y)
{
	Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
		var_Items->set_ItemBar(0,TVariant("<*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarSelected,TVariant(false));
		var_Items->set_ItemBar(G2antt1->get_ItemFromPoint(-1,-1,c,hit),TVariant(G2antt1->Chart->get_BarFromPoint(-1,-1)),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarSelected,TVariant(true));
}

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,29).operator double()));
	var_Chart->set_PaneWidth(false,64);
	var_Chart->LevelCount = 2;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K1"),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2001,1,4).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TVariant("K2"),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("K3"),TNoParam());
G2antt1->EndUpdate();

1436
How can I add or change the padding (spaces) for captions in the control's header
G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Padding-Left")->set_Def(Exg2anttlib_tlb::DefColumnEnum::exHeaderPaddingLeft,TVariant(18));
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Padding-Right");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exHeaderPaddingRight,TVariant(18));
	var_Column->HeaderAlignment = Exg2anttlib_tlb::AlignmentEnum::RightAlignment;
G2antt1->EndUpdate();

1435
Do you have any plans to add cell spacing and cell padding to the cells

G2antt1->BeginUpdate();
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exRowLines;
Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->Add(L"Padding-Left");
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
	var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellPaddingLeft,TVariant(18));
G2antt1->Columns->Add(L"No-Padding")->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(true));
G2antt1->Columns->Add(L"Empty")->Position = 0;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->set_CellValue(TVariant(var_Items->AddItem(TVariant("Item A.1"))),TVariant(1),TVariant("Item A.2"));
	var_Items->set_CellValue(TVariant(var_Items->AddItem(TVariant("Item B.1"))),TVariant(1),TVariant("Item B.2"));
	var_Items->set_CellValue(TVariant(var_Items->AddItem(TVariant("Item C.1"))),TVariant(1),TVariant("Item C.2"));
G2antt1->EndUpdate();

1434
Can I display somehow the filter just on the top of the list, with an editor associated to each column

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void __fastcall TForm1::G2antt1AddItem(TObject *Sender,Exg2anttlib_tlb::HITEM   Item)
{
	Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
		var_Items->AddBar(Item,TVariant("Task"),TVariant(var_Items->get_CellValue(TVariant(Item),TVariant(2))),TVariant(var_Items->get_CellValue(TVariant(Item),TVariant(4))),TNoParam(),TNoParam());
}

// Change event - Occurs when the user changes the cell's content.
void __fastcall TForm1::G2antt1Change(TObject *Sender,Exg2anttlib_tlb::HITEM   Item,long   ColIndex,Variant *   NewValue)
{
	OutputDebugString( L"Locked:" );
	OutputDebugString( PChar(G2antt1->Items->get_IsItemLocked(Item)) );
	Exg2anttlib_tlb::IColumnPtr var_Column = G2antt1->Columns->get_Item(TVariant(ColIndex));
		var_Column->Filter = L"NewValue";
		var_Column->FilterType = Exg2anttlib_tlb::FilterTypeEnum::exPattern;
	G2antt1->ApplyFilter();
}

// MouseUp event - Occurs when the user releases a mouse button.
void __fastcall TForm1::G2antt1MouseUp(TObject *Sender,short   Button,short   Shift,int   X,int   Y)
{
	G2antt1->Edit(G2antt1->Items->get_LockedItem(Exg2anttlib_tlb::VAlignmentEnum::exTop,0));
}

G2antt1->ColumnAutoResize = false;
G2antt1->ScrollBySingleLine = true;
G2antt1->ContinueColumnScroll = false;
G2antt1->Chart->set_FirstVisibleDate(TVariant(TDateTime(1994,8,3).operator double()));
/*
	Select the Component\Import Component...\Import a Type Library,
	to import the following Type Library:

		Microsoft ActiveX Data Objects 6.1 Library

	TypeLib: msado15.dll

	to define the namespace: Adodb_tlb
*/
//#include "ADODB_TLB.h"
Adodb_tlb::_RecordsetPtr rs = Variant::CreateObject(L"ADOR.Recordset");
	rs->Open(TVariant("Orders"),TVariant("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExG2antt\\Sample\\Access\\misc.accdb"),Adodb_tlb::CursorTypeEnum::adOpenStatic,Adodb_tlb::LockTypeEnum::adLockOptimistic,0);
G2antt1->DataSource = (IDispatch*)rs;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->set_LockedItemCount(Exg2anttlib_tlb::VAlignmentEnum::exTop,2);
	long h = var_Items->get_LockedItem(Exg2anttlib_tlb::VAlignmentEnum::exTop,0);
	var_Items->get_CellEditor(TVariant(h),TVariant(0))->EditType = Exg2anttlib_tlb::EditTypeEnum::EditType;
	h = var_Items->get_LockedItem(Exg2anttlib_tlb::VAlignmentEnum::exTop,1);
	var_Items->set_ItemHeight(h,4);
	var_Items->set_ItemDivider(h,0);
	var_Items->set_SelectableItem(h,false);

1433
Is it possible to display information about the firing events
// Event event - Notifies the application once the control fires an event.
void __fastcall TForm1::G2antt1Event(TObject *Sender,long   EventID)
{
	OutputDebugString( PChar(G2antt1->EventParam[-2]) );
}


1432
I need to specify the start and end dates of the bar to be the same, but to keep count of the working units. Is it possible

G2antt1->BeginUpdate();
G2antt1->MarkSearchColumn = false;
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	var_Columns->Add(L"Tasks");
	var_Columns->Add(L"Start")->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(1));
	var_Columns->Add(L"End")->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(543));
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2006,9,20).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,256);
	var_Chart->ShowEmptyBars = 1;
	var_Chart->Bars->Add(L"Task:Split")->Shortcut = L"Task";
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AllowCellValueToItemBar = true;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2006,9,21).operator double()),TVariant(TDateTime(2006,9,21).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2006,9,22).operator double()),TVariant(TDateTime(2006,9,25).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2006,9,25).operator double()),TVariant(TDateTime(2006,9,25).operator double()),TNoParam(),TNoParam());
	var_Items->set_ItemBar(0,TVariant("<*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarKeepWorkingCount,TVariant(true));
G2antt1->EndUpdate();

1431
I need to specify the start and end dates of the bar to be the same, but no bars are shown. (NOT recommended for bars with exBarKeepWorkingCount ) What I can do

G2antt1->BeginUpdate();
G2antt1->MarkSearchColumn = false;
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	var_Columns->Add(L"Tasks");
	var_Columns->Add(L"Start")->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(1));
	var_Columns->Add(L"End")->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(543));
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2006,9,20).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,256);
	var_Chart->ShowEmptyBars = 1;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AllowCellValueToItemBar = true;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2006,9,21).operator double()),TVariant(TDateTime(2006,9,21).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2006,9,22).operator double()),TVariant(TDateTime(2006,9,22).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2006,9,25).operator double()),TVariant(TDateTime(2006,9,25).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

1430
I need my chart to display the end date with on day less. How can I do this (Method 2)

G2antt1->BeginUpdate();
G2antt1->MarkSearchColumn = false;
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	var_Columns->Add(L"Tasks");
	Exg2anttlib_tlb::IColumnPtr var_Column = var_Columns->Add(L"Start");
		var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(1));
		var_Column->Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::DateType;
	Exg2anttlib_tlb::IColumnPtr var_Column1 = var_Columns->Add(L"End");
		var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueToItemBarProperty,TVariant(543));
		var_Column1->Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::DateType;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2006,9,20).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->set_PaneWidth(false,256);
	var_Chart->NonworkingDays = 0;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	var_Items->AllowCellValueToItemBar = true;
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 1")),TVariant("Task"),TVariant(TDateTime(2006,9,21).operator double()),TVariant(TDateTime(2006,9,24).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 2")),TVariant("Task"),TVariant(TDateTime(2006,9,22).operator double()),TVariant(TDateTime(2006,9,25).operator double()),TNoParam(),TNoParam());
	var_Items->AddBar(var_Items->AddItem(TVariant("Task 3")),TVariant("Task"),TVariant(TDateTime(2006,9,23).operator double()),TVariant(TDateTime(2006,9,26).operator double()),TNoParam(),TNoParam());
G2antt1->EndUpdate();

1429
Is it possible to change the width of a specified time unit

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,0);
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2008,1,1).operator double()));
	var_Chart->AllowInsideZoom = true;
	var_Chart->AllowResizeInsideZoom = false;
	var_Chart->InsideZoomOnDblClick = false;
	var_Chart->DefaultInsideZoomFormat->BackColorChart = RGB(255,0,255);
	Exg2anttlib_tlb::IInsideZoomsPtr var_InsideZooms = var_Chart->InsideZooms;
		var_InsideZooms->SplitBaseLevel = false;
		var_InsideZooms->DefaultWidth = 18;
		Exg2anttlib_tlb::IInsideZoomPtr var_InsideZoom = var_InsideZooms->Add(TVariant(TDateTime(2008,1,15).operator double()));
			var_InsideZoom->AllowInsideFormat = false;
			var_InsideZoom->Width = 128;
G2antt1->EndUpdate();

1428
The level unit of the chart is set to day, so i'd like to set the whole background of the current day. Is it possible to set a background color only on the current day (Method 2)

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,0);
	var_Chart->LevelCount = 2;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2008,1,1).operator double()));
	var_Chart->AllowInsideZoom = true;
	var_Chart->AllowResizeInsideZoom = false;
	var_Chart->InsideZoomOnDblClick = false;
	var_Chart->DefaultInsideZoomFormat->BackColorChart = RGB(255,0,0);
	Exg2anttlib_tlb::IInsideZoomsPtr var_InsideZooms = var_Chart->InsideZooms;
		var_InsideZooms->SplitBaseLevel = false;
		var_InsideZooms->DefaultWidth = 18;
		var_InsideZooms->Add(TVariant(TDateTime(2008,1,15).operator double()))->AllowInsideFormat = false;
G2antt1->EndUpdate();

1427
The level unit of the chart is set to day, so i'd like to set the whole background of the current day. Is it possible to set a background color only on the current day (Method 1)
G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,0);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2008,1,1).operator double()));
	var_Chart->MarkTodayColor = var_Chart->BackColor;
	var_Chart->LevelCount = 2;
	var_Chart->MarkSelectDateColor = 0x7fff0000;
	var_Chart->SelectLevel = 1;
	var_Chart->set_SelectDate(TDateTime(2008,1,15).operator double(),true);
G2antt1->EndUpdate();

1426
How can I change the layout of my columns when using the exCRD

G2antt1->BeginUpdate();
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exRowLines;
G2antt1->DefaultItemHeight = 36;
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	Exg2anttlib_tlb::IColumnPtr var_Column = var_Columns->Add(L"Column1");
		var_Column->Visible = false;
		var_Column->Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::EditType;
	Exg2anttlib_tlb::IColumnPtr var_Column1 = var_Columns->Add(L"Column2");
		var_Column1->Visible = false;
		var_Column1->Editor->EditType = Exg2anttlib_tlb::EditTypeEnum::EditType;
	var_Columns->Add(L"Column3")->Visible = false;
	Exg2anttlib_tlb::IColumnPtr var_Column2 = var_Columns->Add(L"FormatLevel");
		var_Column2->FormatLevel = L"(0/1),2";
		var_Column2->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellFormatLevel,TVariant(var_Column2->FormatLevel));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Cell 1.1"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant("Cell 1.2"));
	var_Items->set_CellValue(TVariant(h),TVariant(2),TVariant("Cell 1.3"));
	h = var_Items->AddItem(TVariant("Cell 2.1"));
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant("Cell 2.2"));
	var_Items->set_CellValue(TVariant(h),TVariant(2),TVariant("Cell 2.3"));
G2antt1->EndUpdate();

1425
How can I overlaid a single bar

G2antt1->BeginUpdate();
G2antt1->DefaultItemHeight = 22;
G2antt1->Columns->Add(L"Task");
G2antt1->ScrollBySingleLine = true;
G2antt1->BackColorAlternate = RGB(240,240,240);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
	var_Chart->set_PaneWidth(false,48);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->LevelCount = 2;
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Task"));
		var_Bar->OverlaidGroup = L"OTask";
		var_Bar->OverlaidType = Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsNone;
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("<%=%9%>"));
	Exg2anttlib_tlb::IBarPtr var_Bar1 = var_Chart->Bars->Copy(L"Task",L"OTask");
		var_Bar1->OverlaidGroup = L"Task";
		var_Bar1->OverlaidType = Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsStrict | Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsCascade;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Default"));
	long h = var_Items->AddItem(TVariant("Overlaid"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("A1"),TNoParam());
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,4).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TVariant("A3"),TNoParam());
	var_Items->AddBar(h,TVariant("OTask"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,5).operator double()),TVariant("A2"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("A2"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarColor,TVariant(255));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,5).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TVariant("A4"),TNoParam());
	h1 = var_Items->AddItem(TVariant("Default"));
G2antt1->EndUpdate();

1424
How can I use the exOverlaidBarsCascade, exBarOverlaidKey

// CreateBar event - Fired when the user creates a new bar.
void __fastcall TForm1::G2antt1CreateBar(TObject *Sender,Exg2anttlib_tlb::HITEM   Item,DATE   DateStart,DATE   DateEnd)
{
	G2antt1->Items->set_ItemBar(Item,TVariant("newbar"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarOverlaidKey,TVariant("Level0"));
}

G2antt1->BeginUpdate();
G2antt1->DefaultItemHeight = 22;
G2antt1->Columns->Add(L"Task");
G2antt1->ScrollBySingleLine = true;
G2antt1->BackColorAlternate = RGB(240,240,240);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
	var_Chart->set_PaneWidth(false,48);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->LevelCount = 2;
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Task"));
		var_Bar->OverlaidType = Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsCascade;
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("<%=%9%>"));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Default"));
	long h = var_Items->AddItem(TVariant("Overlaid"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("A1"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("A1"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarOverlaidKey,TVariant("Level0"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,4).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TVariant("A3"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("A3"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarOverlaidKey,TVariant("Level0"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,5).operator double()),TVariant("A2"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("A2"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarColor,TVariant(255));
	var_Items->set_ItemBar(h,TVariant("A2"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarOverlaidKey,TVariant("Level1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,5).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TVariant("A4"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("A4"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarColor,TVariant(255));
	var_Items->set_ItemBar(h,TVariant("A4"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarOverlaidKey,TVariant("Level1"));
	h1 = var_Items->AddItem(TVariant("Default"));
G2antt1->EndUpdate();

1423
How can I use the exOverlaidBarsStack+exOverlaidBarsStackAutoArrange

G2antt1->BeginUpdate();
G2antt1->DefaultItemHeight = 22;
G2antt1->Columns->Add(L"Task");
G2antt1->ScrollBySingleLine = true;
G2antt1->BackColorAlternate = RGB(240,240,240);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,48);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->LevelCount = 2;
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Task"));
		var_Bar->OverlaidType = Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsStackAutoArrange | Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsStack;
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("<%=%9%>"));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Default"));
	long h = var_Items->AddItem(TVariant("Overlaid"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("A1"),TNoParam());
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,5).operator double()),TVariant("A2"),TNoParam());
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,4).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TVariant("A3"),TNoParam());
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,5).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TVariant("A4"),TNoParam());
	h1 = var_Items->AddItem(TVariant("Default"));
G2antt1->EndUpdate();

1422
How can I use the exOverlaidBarsStack

G2antt1->BeginUpdate();
G2antt1->DefaultItemHeight = 22;
G2antt1->Columns->Add(L"Task");
G2antt1->ScrollBySingleLine = true;
G2antt1->BackColorAlternate = RGB(240,240,240);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,48);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->LevelCount = 2;
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Task"));
		var_Bar->OverlaidType = Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsStack;
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("<%=%9%>"));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Default"));
	long h = var_Items->AddItem(TVariant("Overlaid"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("A1"),TNoParam());
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,5).operator double()),TVariant("A2"),TNoParam());
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,4).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TVariant("A3"),TNoParam());
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,5).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TVariant("A4"),TNoParam());
	h1 = var_Items->AddItem(TVariant("Default"));
G2antt1->EndUpdate();

1421
How can I use the exOverlaidBarsIntersect

G2antt1->BeginUpdate();
G2antt1->DefaultItemHeight = 22;
G2antt1->Columns->Add(L"Task");
G2antt1->ScrollBySingleLine = true;
G2antt1->BackColorAlternate = RGB(240,240,240);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,48);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->LevelCount = 2;
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Task"));
		var_Bar->OverlaidType = Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsIntersect;
		var_Bar->set_Overlaid(Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsIntersect,TVariant("Progress"));
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("<%=%9%>"));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Default"));
	long h = var_Items->AddItem(TVariant("Overlaid"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("A1"),TNoParam());
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,5).operator double()),TVariant("A2"),TNoParam());
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,4).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TVariant("A3"),TNoParam());
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,5).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TVariant("A4"),TNoParam());
	h1 = var_Items->AddItem(TVariant("Default"));
G2antt1->EndUpdate();

1420
How can I use the exOverlaidBarsOffset

G2antt1->BeginUpdate();
G2antt1->DefaultItemHeight = 22;
G2antt1->Columns->Add(L"Task");
G2antt1->ScrollBySingleLine = true;
G2antt1->BackColorAlternate = RGB(240,240,240);
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,48);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->LevelCount = 2;
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Task"));
		var_Bar->OverlaidType = Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsOffset;
		var_Bar->set_Def(Exg2anttlib_tlb::ItemBarPropertyEnum::exBarCaption,TVariant("<%=%9%>"));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Default"));
	long h = var_Items->AddItem(TVariant("Overlaid"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("A1"),TNoParam());
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,3).operator double()),TVariant(TDateTime(2001,1,5).operator double()),TVariant("A2"),TNoParam());
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,4).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TVariant("A3"),TNoParam());
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,5).operator double()),TVariant(TDateTime(2001,1,8).operator double()),TVariant("A4"),TNoParam());
	h1 = var_Items->AddItem(TVariant("Default"));
G2antt1->EndUpdate();

1419
Is it possible to specify the end of the project when using the SchedulePDM method
G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,48);
	var_Chart->LevelCount = 2;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K1"),TNoParam());
	long h2 = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,5).operator double()),TVariant("K2"),TNoParam());
	var_Items->AddLink(TVariant("L1"),h1,TVariant("K1"),h2,TVariant("K2"));
	var_Items->set_Link(TVariant("L1"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkText,TVariant("FS"));
	long h3 = var_Items->AddItem(TVariant("Task 3"));
	var_Items->AddBar(h3,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TVariant("K3"),TNoParam());
	var_Items->AddLink(TVariant("L2"),h2,TVariant("K2"),h3,TVariant("K3"));
	var_Items->set_Link(TVariant("L2"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkText,TVariant("SS"));
	var_Items->set_Link(TVariant("L2"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkStartPos,TVariant(0));
	var_Items->set_Link(TVariant("L2"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkEndPos,TVariant(0));
	var_Items->set_DefSchedulePDM(Exg2anttlib_tlb::DefSchedulePDMEnum::exPDMScheduleType,TVariant(2));
	var_Items->set_DefSchedulePDM(Exg2anttlib_tlb::DefSchedulePDMEnum::exPDMScheduleDate,TVariant(TDateTime(2001,1,8).operator double()));
	var_Items->SchedulePDM(0,TVariant("K1"));
G2antt1->EndUpdate();

1418
Is it possible to specify the start of the project when using the SchedulePDM method
G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,28).operator double()));
	var_Chart->set_PaneWidth(false,48);
	var_Chart->LevelCount = 2;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K1"),TNoParam());
	long h2 = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,5).operator double()),TVariant("K2"),TNoParam());
	var_Items->AddLink(TVariant("L1"),h1,TVariant("K1"),h2,TVariant("K2"));
	var_Items->set_Link(TVariant("L1"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkText,TVariant("FS"));
	long h3 = var_Items->AddItem(TVariant("Task 3"));
	var_Items->AddBar(h3,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TVariant("K3"),TNoParam());
	var_Items->AddLink(TVariant("L2"),h2,TVariant("K2"),h3,TVariant("K3"));
	var_Items->set_Link(TVariant("L2"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkText,TVariant("SS"));
	var_Items->set_Link(TVariant("L2"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkStartPos,TVariant(0));
	var_Items->set_Link(TVariant("L2"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkEndPos,TVariant(0));
	var_Items->set_DefSchedulePDM(Exg2anttlib_tlb::DefSchedulePDMEnum::exPDMScheduleType,TVariant(1));
	var_Items->set_DefSchedulePDM(Exg2anttlib_tlb::DefSchedulePDMEnum::exPDMScheduleDate,TVariant(TDateTime(2001,1,8).operator double()));
	var_Items->SchedulePDM(0,TVariant("K1"));
G2antt1->EndUpdate();

1417
How can I change the caption or the addition information being displayed in the Zoom-OnFly view

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,48);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->AllowZoomOnFly = Exg2anttlib_tlb::ZoomOnFlyEnum::exZoomOnFly;
	var_Chart->ResizeUnitScale = Exg2anttlib_tlb::UnitEnum::exHour;
	var_Chart->set_Label(Exg2anttlib_tlb::UnitEnum::exHour,L"<font ;5><b><%h%><br><%AM/PM%></b></font>");
	var_Chart->ZoomOnFlyCaption = TVariant(String("<br><c><b><font ;12><%=%C0 + ' / <fgcolor=00FF00>' + %3%></font></fgcolor></b><br><solidline><upline><b>Start</b>:<%=%1%><br><b") +
">End</b>:<%=%2%><br><b>Duration</b>:<%=round(%2-%1) + ' days'%><br><b>Working</b>:<%='<b>' + int(%258) + '</b> days' + (0:=(%258" +
" - int(%258)) ? (' <fgcolor=FF0000><b>' + round(24 * =:0) + '</b> hours') : '') %>");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,7).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("T1"),TVariant("T1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,11).operator double()),TVariant(TDateTime(2001,1,14).operator double()),TVariant("T3"),TVariant("T3"));
	h = var_Items->AddItem(TNoParam());
	var_Items->AddBar(h,TVariant(""),TVariant(TDateTime(2001,1,15).operator double()),TVariant(TDateTime(2001,1,15).operator double()),TVariant(""),TVariant("Focus the chart ( click here ), and press the <b>CTRL + SHIFT</b>, so the Zoom-OnFly is shown."));
	var_Items->set_SelectableItem(h,false);
G2antt1->EndUpdate();

1416
How can I change the scale in the Zoom-OnFly view

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,48);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->AllowZoomOnFly = Exg2anttlib_tlb::ZoomOnFlyEnum::exZoomOnFly;
	var_Chart->ResizeUnitScale = Exg2anttlib_tlb::UnitEnum::exHour;
	var_Chart->set_Label(Exg2anttlib_tlb::UnitEnum::exHour,L"<font ;5><b><%h%><br><%AM/PM%></b></font>");
	var_Chart->ZoomOnFlyCaption = L"";
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,7).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("T1"),TVariant("T1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,11).operator double()),TVariant(TDateTime(2001,1,14).operator double()),TVariant("T3"),TVariant("T3"));
	h = var_Items->AddItem(TNoParam());
	var_Items->AddBar(h,TVariant(""),TVariant(TDateTime(2001,1,15).operator double()),TVariant(TDateTime(2001,1,15).operator double()),TVariant(""),TVariant("Focus the chart ( click here ), and press the <b>CTRL + SHIFT</b>, so the Zoom-OnFly is shown."));
	var_Items->set_SelectableItem(h,false);
G2antt1->EndUpdate();

1415
Is it possible to change the Zoom-OnFly view's background color

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,48);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->AllowZoomOnFly = Exg2anttlib_tlb::ZoomOnFlyEnum::exZoomOnFly;
	var_Chart->BackColorZoomOnFly = RGB(240,240,240);
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,7).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("T1"),TVariant("T1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,11).operator double()),TVariant(TDateTime(2001,1,14).operator double()),TVariant("T3"),TVariant("T3"));
	h = var_Items->AddItem(TNoParam());
	var_Items->AddBar(h,TVariant(""),TVariant(TDateTime(2001,1,15).operator double()),TVariant(TDateTime(2001,1,15).operator double()),TVariant(""),TVariant("Focus the chart ( click here ), and press the <b>CTRL + SHIFT</b>, so the Zoom-OnFly is shown."));
	var_Items->set_SelectableItem(h,false);
G2antt1->EndUpdate();

1414
How can I include the selected items in the Zoom-OnFly view

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,48);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->AllowZoomOnFly = Exg2anttlib_tlb::ZoomOnFlyEnum::exZoomOnFlyIncludeSelectedItems | Exg2anttlib_tlb::ZoomOnFlyEnum::exZoomOnFly;
	var_Chart->SelBackColor = RGB(240,240,240);
	var_Chart->SelectOnClick = false;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,7).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("T1"),TVariant("T1"));
	var_Items->set_SelectItem(h,true);
	h = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,11).operator double()),TVariant(TDateTime(2001,1,14).operator double()),TVariant("T2"),TVariant("T2"));
	h = var_Items->AddItem(TVariant("Task 3"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,12).operator double()),TVariant("T3"),TVariant("T3"));
	h = var_Items->AddItem(TNoParam());
	var_Items->AddBar(h,TVariant(""),TVariant(TDateTime(2001,1,15).operator double()),TVariant(TDateTime(2001,1,15).operator double()),TVariant(""),TVariant("Focus the chart ( click here ), and press the <b>CTRL + SHIFT</b>, so the Zoom-OnFly is shown."));
	var_Items->set_SelectableItem(h,false);
G2antt1->EndUpdate();

1413
Is it possible to include the neighbors items in the Zoom-OnFly view

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,48);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->AllowZoomOnFly = Exg2anttlib_tlb::ZoomOnFlyEnum::exZoomOnFlyIncludeNeighborItems | Exg2anttlib_tlb::ZoomOnFlyEnum::exZoomOnFly;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,7).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("T1"),TVariant("T1"));
	h = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,11).operator double()),TVariant(TDateTime(2001,1,14).operator double()),TVariant("T3"),TVariant("T3"));
	h = var_Items->AddItem(TVariant("Task 3"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,12).operator double()),TVariant("T1"),TVariant("T1"));
	h = var_Items->AddItem(TNoParam());
	var_Items->AddBar(h,TVariant(""),TVariant(TDateTime(2001,1,15).operator double()),TVariant(TDateTime(2001,1,15).operator double()),TVariant(""),TVariant("Focus the chart ( click here ), and press the <b>CTRL + SHIFT</b>, so the Zoom-OnFly is shown."));
	var_Items->set_SelectableItem(h,false);
G2antt1->EndUpdate();

1412
How can I enable the Zoom-OnFly view

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,48);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,11,5).operator double()));
	var_Chart->LevelCount = 2;
	var_Chart->UnitScale = Exg2anttlib_tlb::UnitEnum::exWeek;
	var_Chart->ResizeUnitScale = Exg2anttlib_tlb::UnitEnum::exDay;
	var_Chart->AllowZoomOnFly = Exg2anttlib_tlb::ZoomOnFlyEnum::exZoomOnFly;
	var_Chart->Bars->get_Item(TVariant("Task"))->OverlaidType = Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsStack;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,7).operator double()),TVariant(TDateTime(2001,1,17).operator double()),TVariant("T1"),TVariant("T1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,18).operator double()),TVariant(TDateTime(2001,2,24).operator double()),TVariant("T3"),TVariant("T3"));
	h = var_Items->AddItem(TNoParam());
	var_Items->AddBar(h,TVariant(""),TVariant(TDateTime(2001,1,15).operator double()),TVariant(TDateTime(2001,1,15).operator double()),TVariant(""),TVariant("Focus the chart ( click here ), and press the <b>CTRL + SHIFT</b>, so the Zoom-OnFly is shown."));
	var_Items->set_SelectableItem(h,false);
G2antt1->EndUpdate();

1411
I am using the overlay bars on stack, can I somehow tell a type of bar, or a specific bar, to be always on top of all other’s. Like a Z-Index or something

G2antt1->BeginUpdate();
G2antt1->ScrollBySingleLine = true;
G2antt1->Columns->Add(L"Task");
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exHLines;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exHLines;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exCreateBarAuto;
	var_Chart->AllowLinkBars = false;
	var_Chart->ResizeUnitScale = Exg2anttlib_tlb::UnitEnum::exHour;
	var_Chart->set_PaneWidth(false,48);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->Bars->get_Item(TVariant("Task"))->OverlaidType = Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsStack;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,7).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("A1"),TVariant("A1"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,12).operator double()),TVariant("A3"),TVariant("A3"));
	var_Items->set_ItemBar(h,TVariant("A3"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarColor,TVariant(65280));
	h = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,7).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("A31"),TVariant("A31"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,12).operator double()),TVariant("A3"),TVariant("A3"));
	var_Items->set_ItemBar(h,TVariant("A3"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarColor,TVariant(255));
	var_Items->AddBar(var_Items->AddItem(TNoParam()),TVariant(""),TVariant(TDateTime(2001,1,10).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TNoParam(),TVariant("The <b>Key</b> of the bar specifies the Z-Order when overlaying."));
G2antt1->EndUpdate();

1410
Is it possible to specify the z-order when using the overlaying feature

G2antt1->BeginUpdate();
G2antt1->Columns->Add(L"Tasks");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->NonworkingDays = 0;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2006,9,17).operator double()));
	var_Chart->set_PaneWidth(false,64);
	var_Chart->LevelCount = 2;
	var_Chart->Bars->get_Item(TVariant("Task"))->OverlaidType = Exg2anttlib_tlb::OverlaidBarsTypeEnum::exOverlaidBarsCascade;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Task"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2006,9,21).operator double()),TVariant(TDateTime(2006,9,27).operator double()),TVariant("K1"),TVariant("K1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2006,9,23).operator double()),TVariant(TDateTime(2006,9,24).operator double()),TVariant("K2"),TVariant("K2"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2006,9,22).operator double()),TVariant(TDateTime(2006,9,25).operator double()),TVariant("K3"),TVariant("K3"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2006,9,21).operator double()),TVariant(TDateTime(2006,9,27).operator double()),TVariant("T1"),TVariant("T1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2006,9,28).operator double()),TVariant(TDateTime(2006,9,29).operator double()),TVariant("T2"),TVariant("T2"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2006,9,30).operator double()),TVariant(TDateTime(2006,10,3).operator double()),TVariant("T3"),TVariant("T3"));
	var_Items->set_ItemBar(0,TVariant("<T*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarColor,TVariant(65280));
	var_Items->set_ItemBar(0,TVariant("<K*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarOverlaidKey,TVariant("A"));
	var_Items->set_ItemBar(0,TVariant("<T*>"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarOverlaidKey,TVariant("B"));
G2antt1->EndUpdate();

1409
I seen that there is no exBarStartColor, exBarEndColor, similar to exBarColor, is there any solution so I can display a different Start/End Color

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->Copy(L"Summary",L"Aka1");
		var_Bar->StartColor = RGB(255,0,0);
		var_Bar->EndColor = RGB(0,0,255);
	Exg2anttlib_tlb::IBarPtr var_Bar1 = var_Chart->Bars->Copy(L"Summary",L"Aka2");
		var_Bar1->StartColor = RGB(0,255,0);
		var_Bar1->EndColor = RGB(255,0,255);
G2antt1->Columns->Add(L"Column");
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Item A"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TVariant("B1"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("B1"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarName,TVariant("Aka1"));
	h = var_Items->AddItem(TVariant("Item B"));
	var_Items->AddBar(h,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,6).operator double()),TVariant("B2"),TNoParam());
	var_Items->set_ItemBar(h,TVariant("B2"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarName,TVariant("Aka2"));
G2antt1->EndUpdate();

1408
How can copy and paste the selection to Microsoft Word, any OLE compliant application, as a snapshot
G2antt1->BeginUpdate();
G2antt1->VisualAppearance->Add(1,TVariant("c:\\exontrol\\images\\normal.ebn"));
G2antt1->HTMLPicture[L"p1"] = TVariant("c:\\exontrol\\images\\card.png");
G2antt1->HTMLPicture[L"p2"] = TVariant("c:\\exontrol\\images\\sun.png");
G2antt1->AutoDrag = Exg2anttlib_tlb::AutoDragEnum::exAutoDragCopySnapShot;
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exNoLinesAtRoot;
G2antt1->HasLines = Exg2anttlib_tlb::HierarchyLineEnum::exThinLine;
G2antt1->ShowFocusRect = false;
G2antt1->DefaultItemHeight = 26;
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->ShowNonworkingDates = false;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,29).operator double()));
	var_Chart->set_PaneWidth(false,96);
	var_Chart->LevelCount = 2;
	Exg2anttlib_tlb::IBarPtr var_Bar = var_Chart->Bars->get_Item(TVariant("Task"));
		var_Bar->Color = 0x1000000;
		var_Bar->Height = 18;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("<img>p1:32</img>Group 1"));
	var_Items->set_CellValueFormat(TVariant(h),TVariant(0),Exg2anttlib_tlb::ValueFormatEnum::exHTML);
	var_Items->set_ItemDivider(h,0);
	var_Items->set_ItemBold(h,true);
	long h1 = var_Items->InsertItem(h,TNoParam(),TVariant("Task 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K1"),TNoParam());
	long h2 = var_Items->InsertItem(h,TNoParam(),TVariant("Task 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,5).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TVariant("K2"),TNoParam());
	var_Items->AddLink(TVariant("L1"),h1,TVariant("K1"),h2,TVariant("K2"));
	var_Items->set_Link(TVariant("L1"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkText,TVariant("L1"));
	long h3 = var_Items->InsertItem(h,TNoParam(),TVariant("Task 3"));
	var_Items->AddBar(h3,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("K3"),TNoParam());
	var_Items->AddLink(TVariant("L2"),h2,TVariant("K2"),h3,TVariant("K3"));
	var_Items->set_Link(TVariant("L2"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkText,TVariant("L2"));
	h = var_Items->AddItem(TVariant("<img>p2:32</img>Group 2"));
	var_Items->set_CellValueFormat(TVariant(h),TVariant(0),Exg2anttlib_tlb::ValueFormatEnum::exHTML);
	var_Items->set_ItemBold(h,true);
	var_Items->set_ItemDivider(h,0);
	h1 = var_Items->InsertItem(h,TNoParam(),TVariant("Task"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K1"),TNoParam());
	var_Items->set_ExpandItem(0,true);
G2antt1->EndUpdate();

1407
How can copy and paste the selection to Microsoft Word, any OLE compliant application, as a image
G2antt1->BeginUpdate();
G2antt1->HTMLPicture[L"p1"] = TVariant("c:\\exontrol\\images\\card.png");
G2antt1->HTMLPicture[L"p2"] = TVariant("c:\\exontrol\\images\\sun.png");
G2antt1->Chart->set_PaneWidth(true,0);
TVariant var_HTMLPicture = TVariant(G2antt1->HTMLPicture[L"aka1"]);
G2antt1->HeaderHeight = 24;
G2antt1->DefaultItemHeight = 48;
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exRowLines;
G2antt1->GridLineColor = RGB(240,240,240);
G2antt1->SelBackMode = Exg2anttlib_tlb::BackModeEnum::exTransparent;
G2antt1->ColumnAutoResize = false;
G2antt1->ContinueColumnScroll = false;
/*
	Select the Component\Import Component...\Import a Type Library,
	to import the following Type Library:

		Microsoft ActiveX Data Objects 6.1 Library

	TypeLib: msado15.dll

	to define the namespace: Adodb_tlb
*/
//#include "ADODB_TLB.h"
Adodb_tlb::_RecordsetPtr rs = Variant::CreateObject(L"ADOR.Recordset");
	rs->Open(TVariant("Orders"),TVariant("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExG2antt\\Sample\\Access\\misc.accdb"),Adodb_tlb::CursorTypeEnum::adOpenStatic,Adodb_tlb::LockTypeEnum::adLockOptimistic,0);
G2antt1->DataSource = (IDispatch*)rs;
G2antt1->Columns->get_Item(TVariant(0))->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueFormat,TVariant(1));
G2antt1->Columns->get_Item(TVariant(0))->FormatColumn = L"value + ` <img>p` + (1 + (value mod 3 ) ) + `</img>`";
G2antt1->Columns->get_Item(TVariant(0))->Width = 112;
G2antt1->Columns->get_Item(TVariant(1))->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellHasCheckBox,TVariant(1));
G2antt1->Columns->get_Item(TVariant(2))->set_LevelKey(TVariant("1"));
G2antt1->Columns->get_Item(TVariant(3))->set_LevelKey(TVariant("1"));
G2antt1->Columns->get_Item(TVariant(4))->set_LevelKey(TVariant("1"));
G2antt1->AutoDrag = Exg2anttlib_tlb::AutoDragEnum::exAutoDragCopyImage;
G2antt1->SingleSel = false;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->get_ItemByIndex(1);
	var_Items->set_SelectItem(h,true);
	h = var_Items->get_ItemByIndex(2);
	var_Items->set_SelectItem(h,true);
	h = var_Items->get_ItemByIndex(3);
	var_Items->set_SelectItem(h,true);
	var_Items->set_LockedItemCount(Exg2anttlib_tlb::VAlignmentEnum::exBottom,1);
	h = var_Items->get_LockedItem(Exg2anttlib_tlb::VAlignmentEnum::exBottom,0);
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant("<font ;16>Click the selection and <b>wait to start dragging</b>, and then drop to Microsoft Word, ..."));
	var_Items->set_CellSingleLine(TVariant(h),TVariant(1),Exg2anttlib_tlb::CellSingleLineEnum::exCaptionWordWrap);
	var_Items->set_CellValueFormat(TVariant(h),TVariant(1),Exg2anttlib_tlb::ValueFormatEnum::exHTML);
	var_Items->set_CellHAlignment(TVariant(h),TVariant(1),Exg2anttlib_tlb::AlignmentEnum::CenterAlignment);
	var_Items->set_ItemDivider(h,1);
	var_Items->set_ItemDividerLineAlignment(h,Exg2anttlib_tlb::DividerAlignmentEnum::DividerTop);
G2antt1->EndUpdate();

1406
How can copy and paste the selection to Microsoft Word, Excel or any OLE compliant application, as a text

G2antt1->BeginUpdate();
G2antt1->Chart->set_PaneWidth(true,0);
G2antt1->ColumnAutoResize = false;
G2antt1->ContinueColumnScroll = false;
/*
	Select the Component\Import Component...\Import a Type Library,
	to import the following Type Library:

		Microsoft ActiveX Data Objects 6.1 Library

	TypeLib: msado15.dll

	to define the namespace: Adodb_tlb
*/
//#include "ADODB_TLB.h"
Adodb_tlb::_RecordsetPtr rs = Variant::CreateObject(L"ADOR.Recordset");
	rs->Open(TVariant("Orders"),TVariant("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExG2antt\\Sample\\Access\\misc.accdb"),Adodb_tlb::CursorTypeEnum::adOpenStatic,Adodb_tlb::LockTypeEnum::adLockOptimistic,0);
G2antt1->DataSource = (IDispatch*)rs;
G2antt1->Columns->get_Item(TVariant(2))->set_LevelKey(TVariant("1"));
G2antt1->Columns->get_Item(TVariant(3))->set_LevelKey(TVariant("1"));
G2antt1->Columns->get_Item(TVariant(4))->set_LevelKey(TVariant("1"));
G2antt1->AutoDrag = Exg2anttlib_tlb::AutoDragEnum::exAutoDragCopyText;
G2antt1->SingleSel = false;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->get_ItemByIndex(1);
	var_Items->set_SelectItem(h,true);
	h = var_Items->get_ItemByIndex(3);
	var_Items->set_SelectItem(h,true);
	h = var_Items->get_ItemByIndex(4);
	var_Items->set_SelectItem(h,true);
	h = var_Items->get_ItemByIndex(5);
	var_Items->set_SelectItem(h,true);
	var_Items->set_LockedItemCount(Exg2anttlib_tlb::VAlignmentEnum::exBottom,1);
	h = var_Items->get_LockedItem(Exg2anttlib_tlb::VAlignmentEnum::exBottom,0);
	var_Items->set_CellValue(TVariant(h),TVariant(0),TVariant("<font ;16>Click the selection and <b>wait to start dragging</b>, and then drop to Microsoft Word, Excel, ..."));
	var_Items->set_CellSingleLine(TVariant(h),TVariant(0),Exg2anttlib_tlb::CellSingleLineEnum::exCaptionWordWrap);
	var_Items->set_CellValueFormat(TVariant(h),TVariant(0),Exg2anttlib_tlb::ValueFormatEnum::exHTML);
	var_Items->set_CellHAlignment(TVariant(h),TVariant(0),Exg2anttlib_tlb::AlignmentEnum::CenterAlignment);
	var_Items->set_ItemDivider(h,0);
	var_Items->set_ItemDividerLineAlignment(h,Exg2anttlib_tlb::DividerAlignmentEnum::DividerTop);
G2antt1->EndUpdate();

1405
Is it possible to change the indentation during the drag and drop
G2antt1->BeginUpdate();
G2antt1->VisualAppearance->Add(1,TVariant("c:\\exontrol\\images\\normal.ebn"));
G2antt1->AutoDrag = Exg2anttlib_tlb::AutoDragEnum::exAutoDragPositionAny;
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exNoLinesAtRoot;
G2antt1->HasLines = Exg2anttlib_tlb::HierarchyLineEnum::exSolidLine;
G2antt1->HasButtons = Exg2anttlib_tlb::ExpandButtonEnum::exWPlus;
G2antt1->ShowFocusRect = false;
G2antt1->SelBackMode = Exg2anttlib_tlb::BackModeEnum::exTransparent;
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->ShowNonworkingDates = false;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,29).operator double()));
	var_Chart->set_PaneWidth(false,128);
	var_Chart->LevelCount = 2;
	var_Chart->Bars->get_Item(TVariant("Task"))->Color = 0x1000000;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Group 1"));
	var_Items->set_ItemBold(h,true);
	var_Items->set_ItemDivider(h,0);
	long h1 = var_Items->InsertItem(h,TNoParam(),TVariant("Task 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K1"),TNoParam());
	long h2 = var_Items->InsertItem(h1,TNoParam(),TVariant("Task 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,15).operator double()),TVariant(TDateTime(2001,1,17).operator double()),TVariant("K4"),TNoParam());
	h2 = var_Items->InsertItem(h1,TNoParam(),TVariant("Task 3"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,5).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TVariant("K2"),TNoParam());
	var_Items->AddLink(TVariant("L1"),h1,TVariant("K1"),h2,TVariant("K2"));
	var_Items->set_Link(TVariant("L1"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkText,TVariant("L1"));
	long h3 = var_Items->InsertItem(h,TNoParam(),TVariant("Task 3"));
	var_Items->AddBar(h3,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("K3"),TNoParam());
	var_Items->AddLink(TVariant("L2"),h2,TVariant("K2"),h3,TVariant("K3"));
	var_Items->set_Link(TVariant("L2"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkText,TVariant("L2"));
	var_Items->set_ExpandItem(h,true);
	var_Items->set_ExpandItem(h1,true);
	h = var_Items->AddItem(TVariant("Group 2"));
	var_Items->set_ItemBold(h,true);
	var_Items->set_ItemDivider(h,0);
	var_Items->set_LockedItemCount(Exg2anttlib_tlb::VAlignmentEnum::exBottom,1);
	h = var_Items->get_LockedItem(Exg2anttlib_tlb::VAlignmentEnum::exBottom,0);
	var_Items->set_CellValue(TVariant(h),TVariant(0),TVariant(String("Click a row, and move by dragging <b>up, down</b> to change the row's parent or <b>left,right</b> to increase or decrease the i") +
"ndentation."));
	var_Items->set_CellSingleLine(TVariant(h),TVariant(0),Exg2anttlib_tlb::CellSingleLineEnum::exCaptionWordWrap);
	var_Items->set_CellValueFormat(TVariant(h),TVariant(0),Exg2anttlib_tlb::ValueFormatEnum::exHTML);
G2antt1->EndUpdate();

1404
Is it possible to allow moving an item to another, but keeping its indentation
G2antt1->BeginUpdate();
G2antt1->VisualAppearance->Add(1,TVariant("c:\\exontrol\\images\\normal.ebn"));
G2antt1->AutoDrag = Exg2anttlib_tlb::AutoDragEnum::exAutoDragPositionKeepIndent;
G2antt1->LinesAtRoot = Exg2anttlib_tlb::LinesAtRootEnum::exNoLinesAtRoot;
G2antt1->HasLines = Exg2anttlib_tlb::HierarchyLineEnum::exThinLine;
G2antt1->ShowFocusRect = false;
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->ShowNonworkingDates = false;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,29).operator double()));
	var_Chart->set_PaneWidth(false,96);
	var_Chart->LevelCount = 2;
	var_Chart->Bars->get_Item(TVariant("Task"))->Color = 0x1000000;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Group 1"));
	var_Items->set_ItemDivider(h,0);
	var_Items->set_ItemBold(h,true);
	long h1 = var_Items->InsertItem(h,TNoParam(),TVariant("Task 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K1"),TNoParam());
	long h2 = var_Items->InsertItem(h,TNoParam(),TVariant("Task 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,5).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TVariant("K2"),TNoParam());
	var_Items->AddLink(TVariant("L1"),h1,TVariant("K1"),h2,TVariant("K2"));
	var_Items->set_Link(TVariant("L1"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkText,TVariant("L1"));
	long h3 = var_Items->InsertItem(h,TNoParam(),TVariant("Task 3"));
	var_Items->AddBar(h3,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("K3"),TNoParam());
	var_Items->AddLink(TVariant("L2"),h2,TVariant("K2"),h3,TVariant("K3"));
	var_Items->set_Link(TVariant("L2"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkText,TVariant("L2"));
	var_Items->set_ExpandItem(h,true);
	h = var_Items->AddItem(TVariant("Group 2"));
	var_Items->set_ItemBold(h,true);
	var_Items->set_ItemDivider(h,0);
G2antt1->EndUpdate();

1403
How can I change the row's position to another, by drag and drop. Is it possible
G2antt1->BeginUpdate();
G2antt1->VisualAppearance->Add(1,TVariant("c:\\exontrol\\images\\normal.ebn"));
G2antt1->AutoDrag = Exg2anttlib_tlb::AutoDragEnum::exAutoDragPosition;
G2antt1->Columns->Add(L"Task");
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->ShowNonworkingDates = false;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2000,12,29).operator double()));
	var_Chart->set_PaneWidth(false,64);
	var_Chart->LevelCount = 2;
	var_Chart->Bars->get_Item(TVariant("Task"))->Color = 0x1000000;
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h1 = var_Items->AddItem(TVariant("Task 1"));
	var_Items->AddBar(h1,TVariant("Task"),TVariant(TDateTime(2001,1,2).operator double()),TVariant(TDateTime(2001,1,4).operator double()),TVariant("K1"),TNoParam());
	long h2 = var_Items->AddItem(TVariant("Task 2"));
	var_Items->AddBar(h2,TVariant("Task"),TVariant(TDateTime(2001,1,5).operator double()),TVariant(TDateTime(2001,1,7).operator double()),TVariant("K2"),TNoParam());
	var_Items->AddLink(TVariant("L1"),h1,TVariant("K1"),h2,TVariant("K2"));
	var_Items->set_Link(TVariant("L1"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkText,TVariant("L1"));
	long h3 = var_Items->AddItem(TVariant("Task 3"));
	var_Items->AddBar(h3,TVariant("Task"),TVariant(TDateTime(2001,1,8).operator double()),TVariant(TDateTime(2001,1,10).operator double()),TVariant("K3"),TNoParam());
	var_Items->AddLink(TVariant("L2"),h2,TVariant("K2"),h3,TVariant("K3"));
	var_Items->set_Link(TVariant("L2"),Exg2anttlib_tlb::LinkPropertyEnum::exLinkText,TVariant("L2"));
G2antt1->EndUpdate();

1402
Is it possible to scroll the control's content by clicking and moving the mouse up or down

// AddItem event - Occurs after a new Item has been inserted to Items collection.
void __fastcall TForm1::G2antt1AddItem(TObject *Sender,Exg2anttlib_tlb::HITEM   Item)
{
	Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
		var_Items->AddBar(Item,TVariant("Task"),TVariant(var_Items->get_CellValue(TVariant(Item),TVariant(2))),TVariant(var_Items->get_CellValue(TVariant(Item),TVariant(4))),TNoParam(),TNoParam());
}

G2antt1->BeginUpdate();
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(1994,8,3).operator double()));
	var_Chart->set_PaneWidth(false,256);
	var_Chart->LevelCount = 2;
	var_Chart->UnitScale = Exg2anttlib_tlb::UnitEnum::exDay;
	var_Chart->FirstWeekDay = Exg2anttlib_tlb::WeekDayEnum::exMonday;
	var_Chart->OverviewVisible = Exg2anttlib_tlb::OverviewVisibleEnum::exOverviewShowAllVisible;
G2antt1->ColumnAutoResize = false;
G2antt1->ContinueColumnScroll = false;
/*
	Select the Component\Import Component...\Import a Type Library,
	to import the following Type Library:

		Microsoft ActiveX Data Objects 6.1 Library

	TypeLib: msado15.dll

	to define the namespace: Adodb_tlb
*/
//#include "ADODB_TLB.h"
Adodb_tlb::_RecordsetPtr rs = Variant::CreateObject(L"ADOR.Recordset");
	rs->Open(TVariant("Orders"),TVariant("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExG2antt\\Sample\\Access\\misc.accdb"),Adodb_tlb::CursorTypeEnum::adOpenStatic,Adodb_tlb::LockTypeEnum::adLockOptimistic,0);
G2antt1->DataSource = (IDispatch*)rs;
G2antt1->AutoDrag = Exg2anttlib_tlb::AutoDragEnum::exAutoDragScroll;
G2antt1->EndUpdate();

1401
How can I display bars so they fit the entire height ( height of the row )

G2antt1->BeginUpdate();
G2antt1->VisualAppearance->Add(1,TVariant("c:\\exontrol\\images\\normal.ebn"));
G2antt1->DefaultItemHeight = 36;
Exg2anttlib_tlb::IChartPtr var_Chart = G2antt1->Chart;
	var_Chart->set_PaneWidth(false,164);
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2001,1,1).operator double()));
	var_Chart->UnitWidth = 48;
	var_Chart->LevelCount = 2;
	var_Chart->UnitScale = Exg2anttlib_tlb::UnitEnum::exHour;
	var_Chart->NonworkingHours = 16253183;
	var_Chart->ShowNonworkingUnits = false;
	var_Chart->UnitWidth = 16;
	var_Chart->set_FirstVisibleDate(TVariant(TDateTime(2012,1,1,8,00,00,0).operator double()));
	var_Chart->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exAllLines;
	var_Chart->Bars->Add(L"Empty")->Pattern = Exg2anttlib_tlb::PatternEnum::exPatternEmpty;
	Exg2anttlib_tlb::ILevelPtr var_Level = var_Chart->get_Level(0);
		var_Level->Alignment = Exg2anttlib_tlb::AlignmentEnum::exHOutside | Exg2anttlib_tlb::AlignmentEnum::CenterAlignment;
		var_Level->set_Label(TVariant("<%d2%>"));
	var_Chart->AllowLinkBars = false;
	var_Chart->AllowCreateBar = Exg2anttlib_tlb::CreateBarEnum::exNoCreateBar;
	var_Chart->BarsAllowSizing = false;
	var_Chart->AllowSelectObjects = Exg2anttlib_tlb::SelectObjectsEnum::exNoSelectObjects;
G2antt1->DrawGridLines = Exg2anttlib_tlb::GridLinesEnum::exAllLines;
G2antt1->ShowFocusRect = false;
Exg2anttlib_tlb::IColumnsPtr var_Columns = G2antt1->Columns;
	Exg2anttlib_tlb::IColumnPtr var_Column = var_Columns->Add(L"CA");
		var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellSingleLine,TVariant(false));
		var_Column->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueFormat,TVariant(1));
	Exg2anttlib_tlb::IColumnPtr var_Column1 = var_Columns->Add(L"CB");
		var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellSingleLine,TVariant(false));
		var_Column1->set_Def(Exg2anttlib_tlb::DefColumnEnum::exCellValueFormat,TVariant(1));
Exg2anttlib_tlb::IItemsPtr var_Items = G2antt1->Items;
	long h = var_Items->AddItem(TVariant("Address 1.1<br>Line 2.1<br>C1"));
	var_Items->set_ItemMaxHeight(h,96);
	var_Items->set_CellValue(TVariant(h),TVariant(1),TVariant("Address 1.2<br>Line 2.2<br>C2"));
	var_Items->AddBar(h,TVariant("Empty"),TVariant(TDateTime(2012,1,2,8,00,00,0).operator double()),TVariant(TDateTime(2012,1,2,19,00,00,0).operator double()),TVariant("A"),TVariant("This is a bit of text<br>being <font ;9>displayed ion the <b>bar A"));
	var_Items->set_ItemBar(h,TVariant("A"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarBackColor,TVariant(16777471));
	var_Items->set_ItemBar(h,TVariant("A"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarHAlignCaption,TVariant(0));
	var_Items->set_ItemBar(h,TVariant("A"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarVAlignCaption,TVariant(2));
	var_Items->AddBar(h,TVariant("Empty"),TVariant(TDateTime(2012,1,3,8,00,00,0).operator double()),TVariant(TDateTime(2012,1,3,19,00,00,0).operator double()),TVariant("B"),TVariant("<fgcolor=FFFFFF>This is a bit of text<br><fgcolor=FFFFFF>being <font ;9>displayed ion the <b>bar B"));
	var_Items->set_ItemBar(h,TVariant("B"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarBackColor,TVariant(33488896));
	var_Items->set_ItemBar(h,TVariant("B"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarHAlignCaption,TVariant(2));
	var_Items->set_ItemBar(h,TVariant("B"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarVAlignCaption,TVariant(0));
	var_Items->AddBar(h,TVariant("Empty"),TVariant(TDateTime(2012,1,4,8,00,00,0).operator double()),TVariant(TDateTime(2012,1,4,19,00,00,0).operator double()),TVariant("C"),TVariant("<font Tahoma;12><b>bar C"));
	var_Items->set_ItemBar(h,TVariant("C"),Exg2anttlib_tlb::ItemBarPropertyEnum::exBarBackColor,TVariant(33489151));
G2antt1->EndUpdate();